{
  "apps": [
    {
      "id": "gmail",
      "key": "gmail",
      "name": "Gmail",
      "description": "Connect to Gmail to send and manage emails.",
      "category": "popular",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/gmail.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 648,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": true,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Connect to Gmail to send and manage emails.",
        "categories": [
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/gmail.svg",
        "tool_count": 21
      }
    },
    {
      "id": "composio",
      "key": "composio",
      "name": "Composio",
      "description": "Composio enables AI Agents and LLMs to authenticate and integrate with various tools via function calling.",
      "category": "ai & machine learning",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//composio-logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 391,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Composio enables AI Agents and LLMs to authenticate and integrate with various tools via function calling.",
        "categories": [
          {
            "id": "ai-&-machine-learning",
            "name": "ai & machine learning"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//composio-logo.png",
        "tool_count": 12
      }
    },
    {
      "id": "github",
      "key": "github",
      "name": "GitHub",
      "description": "GitHub API Tool",
      "category": "popular",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/github.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 136,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": true,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "GitHub API Tool",
        "categories": [
          {
            "id": "developer-tools-&-devops",
            "name": "developer tools & devops"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/github.png",
        "tool_count": 910
      }
    },
    {
      "id": "googlecalendar",
      "key": "googlecalendar",
      "name": "Googlecalendar",
      "description": "Google Calendar is a time management tool providing scheduling features, event reminders, and integration with email and other apps for streamlined organization",
      "category": "popular",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-calendar.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 81,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": true,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Google Calendar is a time management tool providing scheduling features, event reminders, and integration with email and other apps for streamlined organization",
        "categories": [
          {
            "id": "scheduling-&-booking",
            "name": "scheduling & booking"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-calendar.svg",
        "tool_count": 14
      }
    },
    {
      "id": "notion",
      "key": "notion",
      "name": "Notion",
      "description": "Notion centralizes notes, docs, wikis, and tasks in a unified workspace, letting teams build custom workflows for collaboration and knowledge management",
      "category": "popular",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/notion.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 917,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": true,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Notion centralizes notes, docs, wikis, and tasks in a unified workspace, letting teams build custom workflows for collaboration and knowledge management",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/notion.svg",
        "tool_count": 24
      }
    },
    {
      "id": "googlesheets",
      "key": "googlesheets",
      "name": "Googlesheets",
      "description": "Google Sheets is a web-based spreadsheet program that is part of the\n    Google Drive office suite.",
      "category": "popular",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-sheets.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 108,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": true,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Google Sheets is a web-based spreadsheet program that is part of the\n    Google Drive office suite.",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-sheets.svg",
        "tool_count": 12
      }
    },
    {
      "id": "slack",
      "key": "slack",
      "name": "Slack",
      "description": "Slack is a channel-based messaging platform. With Slack, people can work together more effectively, connect all their software tools and services, and find the information they need to do their best work — all within a secure, enterprise-grade environment.",
      "category": "popular",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/slack.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 597,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": true,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Slack is a channel-based messaging platform. With Slack, people can work together more effectively, connect all their software tools and services, and find the information they need to do their best work — all within a secure, enterprise-grade environment.",
        "categories": [
          {
            "id": "productivity",
            "name": "productivity"
          },
          {
            "id": "popular",
            "name": "popular"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/slack.svg",
        "tool_count": 174
      }
    },
    {
      "id": "supabase",
      "key": "supabase",
      "name": "Supabase",
      "description": "Supabase is an open-source backend-as-a-service providing a Postgres database, authentication, storage, and real-time subscription APIs for building modern applications",
      "category": "developer tools & devops",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/supabase.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 756,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Supabase is an open-source backend-as-a-service providing a Postgres database, authentication, storage, and real-time subscription APIs for building modern applications",
        "categories": [
          {
            "id": "developer-tools-&-devops",
            "name": "developer tools & devops"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/supabase.jpeg",
        "tool_count": 77
      }
    },
    {
      "id": "outlook",
      "key": "outlook",
      "name": "Outlook",
      "description": "Outlook is Microsoft’s email and calendaring platform integrating contacts, tasks, and scheduling, enabling users to manage communications and events in a unified workspace",
      "category": "collaboration & communication",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Outlook%20SVG%20Icon.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 220,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Outlook is Microsoft’s email and calendaring platform integrating contacts, tasks, and scheduling, enabling users to manage communications and events in a unified workspace",
        "categories": [
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Outlook%20SVG%20Icon.svg",
        "tool_count": 22
      }
    },
    {
      "id": "perplexityai",
      "key": "perplexityai",
      "name": "Perplexityai",
      "description": "The Perplexity tool interfaces with Perplexity AI's search service, offering advanced natural language processing for sophisticated searches. The PerplexityAISearch action allows for:\n\n    - Query execution with AI models tailored to various search tasks.\n    - Search customization through parameters affecting content generation.\n    - Domain filtering to enhance search precision.\n    - Real-time response streaming for dynamic applications.\n\n    This action is highly configurable for a tailored search experience, suitable for a wide range of AI-driven applications.",
      "category": "ai & machine learning",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//perplexity.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 445,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "The Perplexity tool interfaces with Perplexity AI's search service, offering advanced natural language processing for sophisticated searches. The PerplexityAISearch action allows for:\n\n    - Query execution with AI models tailored to various search tasks.\n    - Search customization through parameters affecting content generation.\n    - Domain filtering to enhance search precision.\n    - Real-time response streaming for dynamic applications.\n\n    This action is highly configurable for a tailored search experience, suitable for a wide range of AI-driven applications.",
        "categories": [
          {
            "id": "ai-&-machine-learning",
            "name": "ai & machine learning"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//perplexity.jpeg",
        "tool_count": 1
      }
    },
    {
      "id": "twitter",
      "key": "twitter",
      "name": "Twitter",
      "description": "Twitter, Inc. was an American social media company based in San Francisco, California, which operated and was named for named for its flagship social media network prior to its rebrand as X.",
      "category": "social",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/twitter.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 407,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Twitter, Inc. was an American social media company based in San Francisco, California, which operated and was named for named for its flagship social media network prior to its rebrand as X.",
        "categories": [
          {
            "id": "social",
            "name": "social"
          },
          {
            "id": "marketing",
            "name": "marketing"
          },
          {
            "id": "popular",
            "name": "popular"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/twitter.png",
        "tool_count": 72
      }
    },
    {
      "id": "googledrive",
      "key": "googledrive",
      "name": "Googledrive",
      "description": "Connect to Google Drive!",
      "category": "document & file management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-drive.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 883,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Connect to Google Drive!",
        "categories": [
          {
            "id": "document-&-file-management",
            "name": "document & file management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-drive.svg",
        "tool_count": 10
      }
    },
    {
      "id": "googledocs",
      "key": "googledocs",
      "name": "Googledocs",
      "description": "Connect to Google Docs to perform various document-related actions.",
      "category": "productivity & project management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-docs.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 92,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Connect to Google Docs to perform various document-related actions.",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          },
          {
            "id": "document-&-file-management",
            "name": "document & file management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-docs.svg",
        "tool_count": 5
      }
    },
    {
      "id": "hubspot",
      "key": "hubspot",
      "name": "Hubspot",
      "description": "HubSpot is an inbound marketing, sales, and customer service platform integrating CRM, email automation, and analytics to facilitate lead nurturing and seamless customer experiences",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//hubspot.webp",
      "isActive": false,
      "status": "offline",
      "usageCount": 186,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "HubSpot is an inbound marketing, sales, and customer service platform integrating CRM, email automation, and analytics to facilitate lead nurturing and seamless customer experiences",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "sales-&-customer-support",
            "name": "sales & customer support"
          },
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//hubspot.webp",
        "tool_count": 229
      }
    },
    {
      "id": "linear",
      "key": "linear",
      "name": "Linear",
      "description": "Connect to Linear to create and manage issues, list projects, teams, and more",
      "category": "popular",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/linear.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 780,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": true,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Connect to Linear to create and manage issues, list projects, teams, and more",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/linear.png",
        "tool_count": 18
      }
    },
    {
      "id": "airtable",
      "key": "airtable",
      "name": "Airtable",
      "description": "Airtable is a low‒code platform to build next‒gen apps. Move beyond\n    rigid tools, operationalize your critical data, and reimagine\n    workflows with AI",
      "category": "productivity & project management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/airtable.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 865,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Airtable is a low‒code platform to build next‒gen apps. Move beyond\n    rigid tools, operationalize your critical data, and reimagine\n    workflows with AI",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          },
          {
            "id": "workflow-automation",
            "name": "workflow automation"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/airtable.svg",
        "tool_count": 17
      }
    },
    {
      "id": "codeinterpreter",
      "key": "codeinterpreter",
      "name": "Codeinterpreter",
      "description": "CodeInterpreter extends Python-based coding environments with integrated data analysis, enabling developers to run scripts, visualize results, and prototype solutions inside supported platforms",
      "category": "developer tools & devops",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//code-interpreter.webp",
      "isActive": false,
      "status": "offline",
      "usageCount": 424,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "CodeInterpreter extends Python-based coding environments with integrated data analysis, enabling developers to run scripts, visualize results, and prototype solutions inside supported platforms",
        "categories": [
          {
            "id": "developer-tools-&-devops",
            "name": "developer tools & devops"
          },
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//code-interpreter.webp",
        "tool_count": 5
      }
    },
    {
      "id": "serpapi",
      "key": "serpapi",
      "name": "Serpapi",
      "description": "SerpApi provides a real-time API for structured search engine results, allowing developers to scrape, parse, and analyze SERP data for SEO and research",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//serpapi.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 831,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "SerpApi provides a real-time API for structured search engine results, allowing developers to scrape, parse, and analyze SERP data for SEO and research",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//serpapi.png",
        "tool_count": 10
      }
    },
    {
      "id": "jira",
      "key": "jira",
      "name": "Jira",
      "description": "Jira API tool",
      "category": "productivity",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/jira.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 329,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Jira API tool",
        "categories": [
          {
            "id": "productivity",
            "name": "productivity"
          },
          {
            "id": "ticketing",
            "name": "ticketing"
          },
          {
            "id": "popular",
            "name": "popular"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/jira.svg",
        "tool_count": 43
      }
    },
    {
      "id": "firecrawl",
      "key": "firecrawl",
      "name": "Firecrawl",
      "description": "Firecrawl automates web crawling and data extraction, enabling organizations to gather content, index sites, and gain insights from online sources at scale",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/firecrawl.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 357,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Firecrawl automates web crawling and data extraction, enabling organizations to gather content, index sites, and gain insights from online sources at scale",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/firecrawl.jpeg",
        "tool_count": 7
      }
    },
    {
      "id": "tavily",
      "key": "tavily",
      "name": "Tavily",
      "description": "Tavily provides advanced search capabilities with various options\n    including image inclusion, raw content, and domain filtering.",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/tavily.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 243,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Tavily provides advanced search capabilities with various options\n    including image inclusion, raw content, and domain filtering.",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/tavily.svg",
        "tool_count": 1
      }
    },
    {
      "id": "youtube",
      "key": "youtube",
      "name": "Youtube",
      "description": "Youtube actions to interact with youtube app",
      "category": "entertainment & media",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/youtube.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 429,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Youtube actions to interact with youtube app",
        "categories": [
          {
            "id": "entertainment-&-media",
            "name": "entertainment & media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/youtube.svg",
        "tool_count": 12
      }
    },
    {
      "id": "slackbot",
      "key": "slackbot",
      "name": "Slackbot",
      "description": "Slackbot automates responses and reminders within Slack, assisting with tasks like onboarding, FAQs, and notifications to streamline team productivity",
      "category": "collaboration & communication",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/slack.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 374,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Slackbot automates responses and reminders within Slack, assisting with tasks like onboarding, FAQs, and notifications to streamline team productivity",
        "categories": [
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/slack.svg",
        "tool_count": 174
      }
    },
    {
      "id": "canvas",
      "key": "canvas",
      "name": "Canvas",
      "description": "Canvas is a learning management system supporting online courses, assignments, grading, and collaboration, widely used by schools and universities for virtual classrooms",
      "category": "education & lms",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/canvas.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 976,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Canvas is a learning management system supporting online courses, assignments, grading, and collaboration, widely used by schools and universities for virtual classrooms",
        "categories": [
          {
            "id": "education-&-lms",
            "name": "education & lms"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/canvas.jpeg",
        "tool_count": 84
      }
    },
    {
      "id": "bitbucket",
      "key": "bitbucket",
      "name": "Bitbucket",
      "description": "Bitbucket is a Git-based code hosting and collaboration platform supporting private and public repositories, enabling teams to manage and review code through pull requests and integrations",
      "category": "developer tools & devops",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/bitbucket.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 261,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Bitbucket is a Git-based code hosting and collaboration platform supporting private and public repositories, enabling teams to manage and review code through pull requests and integrations",
        "categories": [
          {
            "id": "developer-tools-&-devops",
            "name": "developer tools & devops"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/bitbucket.svg",
        "tool_count": 16
      }
    },
    {
      "id": "googletasks",
      "key": "googletasks",
      "name": "Googletasks",
      "description": "Google Tasks provides a simple to-do list and task management system integrated into Gmail and Google Calendar for quick and easy tracking",
      "category": "productivity & project management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//google-tasks.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 984,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Google Tasks provides a simple to-do list and task management system integrated into Gmail and Google Calendar for quick and easy tracking",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//google-tasks.png",
        "tool_count": 11
      }
    },
    {
      "id": "discord",
      "key": "discord",
      "name": "Discord",
      "description": "An instant messaging and VoIP social platform.",
      "category": "gaming",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/discord.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 361,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "An instant messaging and VoIP social platform.",
        "categories": [
          {
            "id": "gaming",
            "name": "gaming"
          },
          {
            "id": "social",
            "name": "social"
          },
          {
            "id": "popular",
            "name": "popular"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/discord.svg",
        "tool_count": 15
      }
    },
    {
      "id": "figma",
      "key": "figma",
      "name": "Figma",
      "description": "A collaborative interface design tool.",
      "category": "design & creative tools",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/figma.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 691,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "A collaborative interface design tool.",
        "categories": [
          {
            "id": "design-&-creative-tools",
            "name": "design & creative tools"
          },
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/figma.svg",
        "tool_count": 44
      }
    },
    {
      "id": "composio_search",
      "key": "composio_search",
      "name": "Composio search",
      "description": "Composio Search is an all-in-one tool for searching and scraping the web.",
      "category": "ai & machine learning",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//composio-logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 902,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Composio Search is an all-in-one tool for searching and scraping the web.",
        "categories": [
          {
            "id": "ai-&-machine-learning",
            "name": "ai & machine learning"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//composio-logo.png",
        "tool_count": 12
      }
    },
    {
      "id": "reddit",
      "key": "reddit",
      "name": "Reddit",
      "description": "Connect to Reddit to post and comment.",
      "category": "marketing & social media",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/reddit.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 455,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Connect to Reddit to post and comment.",
        "categories": [
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          },
          {
            "id": "entertainment-&-media",
            "name": "entertainment & media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/reddit.svg",
        "tool_count": 10
      }
    },
    {
      "id": "cal",
      "key": "cal",
      "name": "Cal",
      "description": "Cal simplifies meeting coordination by providing shareable booking pages, calendar syncing, and availability management to streamline the scheduling process",
      "category": "scheduling & booking",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//cal-logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 805,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Cal simplifies meeting coordination by providing shareable booking pages, calendar syncing, and availability management to streamline the scheduling process",
        "categories": [
          {
            "id": "scheduling-&-booking",
            "name": "scheduling & booking"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//cal-logo.png",
        "tool_count": 142
      }
    },
    {
      "id": "wrike",
      "key": "wrike",
      "name": "Wrike",
      "description": "Wrike is a project management and collaboration tool offering customizable workflows, Gantt charts, reporting, and resource management to boost team productivity",
      "category": "productivity & project management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/wrike.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 118,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Wrike is a project management and collaboration tool offering customizable workflows, Gantt charts, reporting, and resource management to boost team productivity",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/wrike.png",
        "tool_count": 38
      }
    },
    {
      "id": "exa",
      "key": "exa",
      "name": "Exa",
      "description": "The Exa class extends the base Tool class to interact with the Exa Search service, offering actions like Search, Similarlink, and Answer.\n    These actions enable querying, finding similar links, and generating answers from search results. Currently, no triggers are defined, but they can be added as needed to enhance functionality.",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//exa.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 242,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "The Exa class extends the base Tool class to interact with the Exa Search service, offering actions like Search, Similarlink, and Answer.\n    These actions enable querying, finding similar links, and generating answers from search results. Currently, no triggers are defined, but they can be added as needed to enhance functionality.",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//exa.png",
        "tool_count": 4
      }
    },
    {
      "id": "sentry",
      "key": "sentry",
      "name": "Sentry",
      "description": "Integrate Sentry to manage your error tracking and monitoring.",
      "category": "developer tools & devops",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/sentry.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 679,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Integrate Sentry to manage your error tracking and monitoring.",
        "categories": [
          {
            "id": "developer-tools-&-devops",
            "name": "developer tools & devops"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/sentry.svg",
        "tool_count": 177
      }
    },
    {
      "id": "snowflake",
      "key": "snowflake",
      "name": "Snowflake",
      "description": "Connect to Snowflake to run queries.",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/snowflake.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 178,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Connect to Snowflake to run queries.",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/snowflake.svg",
        "tool_count": 6
      }
    },
    {
      "id": "hackernews",
      "key": "hackernews",
      "name": "Hackernews",
      "description": "Hacker News is a tech-focused news aggregator by Y Combinator, featuring user-submitted stories and discussions on startups, programming, and emerging trends",
      "category": "other / miscellaneous",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/hackernews.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 586,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Hacker News is a tech-focused news aggregator by Y Combinator, featuring user-submitted stories and discussions on startups, programming, and emerging trends",
        "categories": [
          {
            "id": "other-/-miscellaneous",
            "name": "other / miscellaneous"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/hackernews.png",
        "tool_count": 6
      }
    },
    {
      "id": "elevenlabs",
      "key": "elevenlabs",
      "name": "Elevenlabs",
      "description": "Create natural AI voices instantly in any language - perfect for video creators, developers, and businesses.",
      "category": "voice",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/elevenlabs.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 153,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Create natural AI voices instantly in any language - perfect for video creators, developers, and businesses.",
        "categories": [
          {
            "id": "voice",
            "name": "voice"
          },
          {
            "id": "popular",
            "name": "popular"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/elevenlabs.png",
        "tool_count": 59
      }
    },
    {
      "id": "microsoft_teams",
      "key": "microsoft_teams",
      "name": "Microsoft teams",
      "description": "Connect to Microsoft Teams to manage channels.",
      "category": "collaboration & communication",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//microsoft-teams-logo.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 431,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Connect to Microsoft Teams to manage channels.",
        "categories": [
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//microsoft-teams-logo.jpeg",
        "tool_count": 13
      }
    },
    {
      "id": "asana",
      "key": "asana",
      "name": "Asana",
      "description": "Tool to help teams organize, track, and manage their work.",
      "category": "productivity",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//asana.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 35,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Tool to help teams organize, track, and manage their work.",
        "categories": [
          {
            "id": "productivity",
            "name": "productivity"
          },
          {
            "id": "ticketing",
            "name": "ticketing"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//asana.png",
        "tool_count": 19
      }
    },
    {
      "id": "peopledatalabs",
      "key": "peopledatalabs",
      "name": "Peopledatalabs",
      "description": "PeopleDataLabs provides B2B data enrichment and identity resolution, empowering organizations to build enriched user profiles and validate customer information",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/pdl.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 504,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "PeopleDataLabs provides B2B data enrichment and identity resolution, empowering organizations to build enriched user profiles and validate customer information",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/pdl.png",
        "tool_count": 15
      }
    },
    {
      "id": "shopify",
      "key": "shopify",
      "name": "Shopify",
      "description": "A leading global commerce platform that allows anyone to sell online\n    and in person.",
      "category": "e-commerce",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/shopify.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 157,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "A leading global commerce platform that allows anyone to sell online\n    and in person.",
        "categories": [
          {
            "id": "e-commerce",
            "name": "e-commerce"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/shopify.svg",
        "tool_count": 26
      }
    },
    {
      "id": "linkedin",
      "key": "linkedin",
      "name": "Linkedin",
      "description": "Connect to Linked to send and manage emails.",
      "category": "marketing & social media",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/linkedin.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 895,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Connect to Linked to send and manage emails.",
        "categories": [
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/linkedin.svg",
        "tool_count": 4
      }
    },
    {
      "id": "google_maps",
      "key": "google_maps",
      "name": "Google maps",
      "description": "Google Maps is a web mapping platform and consumer application offering satellite imagery,\n    aerial photography, street maps, 360° interactive panoramic views of streets, real-time\n    traffic conditions, and route planning for traveling by foot, car, bike, air and public\n    transportation.",
      "category": "other / miscellaneous",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google_maps.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 120,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Google Maps is a web mapping platform and consumer application offering satellite imagery,\n    aerial photography, street maps, 360° interactive panoramic views of streets, real-time\n    traffic conditions, and route planning for traveling by foot, car, bike, air and public\n    transportation.",
        "categories": [
          {
            "id": "other-/-miscellaneous",
            "name": "other / miscellaneous"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google_maps.jpeg",
        "tool_count": 4
      }
    },
    {
      "id": "one_drive",
      "key": "one_drive",
      "name": "One drive",
      "description": "OneDrive is Microsoft’s cloud storage solution enabling users to store, sync, and share files across devices, offering offline access, real-time collaboration, and enterprise-grade security",
      "category": "document & file management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/one-drive.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 819,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "OneDrive is Microsoft’s cloud storage solution enabling users to store, sync, and share files across devices, offering offline access, real-time collaboration, and enterprise-grade security",
        "categories": [
          {
            "id": "document-&-file-management",
            "name": "document & file management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/one-drive.svg",
        "tool_count": 7
      }
    },
    {
      "id": "docusign",
      "key": "docusign",
      "name": "Docusign",
      "description": "DocuSign provides eSignature and digital agreement solutions, enabling businesses to send, sign, track, and manage documents electronically",
      "category": "document & file management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/docusign.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 249,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "DocuSign provides eSignature and digital agreement solutions, enabling businesses to send, sign, track, and manage documents electronically",
        "categories": [
          {
            "id": "document-&-file-management",
            "name": "document & file management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/docusign.svg",
        "tool_count": 342
      }
    },
    {
      "id": "discordbot",
      "key": "discordbot",
      "name": "Discordbot",
      "description": "Discordbot refers to automated programs on Discord servers, performing tasks like moderation, music playback, and user engagement to enhance community interactions",
      "category": "collaboration & communication",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/discord.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 945,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Discordbot refers to automated programs on Discord servers, performing tasks like moderation, music playback, and user engagement to enhance community interactions",
        "categories": [
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/discord.svg",
        "tool_count": 164
      }
    },
    {
      "id": "salesforce",
      "key": "salesforce",
      "name": "Salesforce",
      "description": "Salesforce is a leading CRM platform integrating sales, service, marketing, and analytics to build customer relationships and drive business growth",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/salesforce.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 707,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Salesforce is a leading CRM platform integrating sales, service, marketing, and analytics to build customer relationships and drive business growth",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "sales-&-customer-support",
            "name": "sales & customer support"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/salesforce.svg",
        "tool_count": 34
      }
    },
    {
      "id": "twitter_media",
      "key": "twitter_media",
      "name": "Twitter media",
      "description": "Twitter Media focuses on multimedia tools and features within Twitter, allowing brands to leverage rich content for marketing campaigns",
      "category": "marketing & social media",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/twitter.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 118,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Twitter Media focuses on multimedia tools and features within Twitter, allowing brands to leverage rich content for marketing campaigns",
        "categories": [
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/twitter.png",
        "tool_count": 1
      }
    },
    {
      "id": "calendly",
      "key": "calendly",
      "name": "Calendly",
      "description": "Calendly is an appointment scheduling tool that automates meeting invitations, availability checks, and reminders, helping individuals and teams avoid email back-and-forth",
      "category": "scheduling & booking",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/calendly.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 979,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Calendly is an appointment scheduling tool that automates meeting invitations, availability checks, and reminders, helping individuals and teams avoid email back-and-forth",
        "categories": [
          {
            "id": "scheduling-&-booking",
            "name": "scheduling & booking"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/calendly.svg",
        "tool_count": 42
      }
    },
    {
      "id": "trello",
      "key": "trello",
      "name": "Trello",
      "description": "A web-based, kanban-style, list-making application.",
      "category": "popular",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/trello.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 531,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": true,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "A web-based, kanban-style, list-making application.",
        "categories": [
          {
            "id": "productivity",
            "name": "productivity"
          },
          {
            "id": "ticketing",
            "name": "ticketing"
          },
          {
            "id": "popular",
            "name": "popular"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/trello.svg",
        "tool_count": 323
      }
    },
    {
      "id": "apollo",
      "key": "apollo",
      "name": "Apollo",
      "description": "Apollo provides CRM and lead generation capabilities, helping businesses discover contacts, manage outreach, and track sales pipelines for consistent customer relationship development",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/apollo.jpg",
      "isActive": false,
      "status": "offline",
      "usageCount": 214,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Apollo provides CRM and lead generation capabilities, helping businesses discover contacts, manage outreach, and track sales pipelines for consistent customer relationship development",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "sales-&-customer-support",
            "name": "sales & customer support"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/apollo.jpg",
        "tool_count": 31
      }
    },
    {
      "id": "semrush",
      "key": "semrush",
      "name": "Semrush",
      "description": "Semrush is a popular SEO tool suite that specializes in keyword research, competitor analysis, and Google Ad campaign optimization.",
      "category": "seo",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/semrush.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 709,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Semrush is a popular SEO tool suite that specializes in keyword research, competitor analysis, and Google Ad campaign optimization.",
        "categories": [
          {
            "id": "seo",
            "name": "seo"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/semrush.png",
        "tool_count": 36
      }
    },
    {
      "id": "mem0",
      "key": "mem0",
      "name": "Mem0",
      "description": "Mem0",
      "category": "ai & machine learning",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//mem0.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 715,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Mem0",
        "categories": [
          {
            "id": "ai-&-machine-learning",
            "name": "ai & machine learning"
          },
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//mem0.png",
        "tool_count": 43
      }
    },
    {
      "id": "neon",
      "key": "neon",
      "name": "Neon",
      "description": "Postgres, on a serverless platform designed to help you build reliable and scalable applications faster",
      "category": "developer tools & devops",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/neon.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 300,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Postgres, on a serverless platform designed to help you build reliable and scalable applications faster",
        "categories": [
          {
            "id": "developer-tools-&-devops",
            "name": "developer tools & devops"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/neon.png",
        "tool_count": 69
      }
    },
    {
      "id": "weathermap",
      "key": "weathermap",
      "name": "Weathermap",
      "description": "WeatherMap provides visual weather data, forecasts, and mappings, helping users understand climate patterns or track severe weather conditions",
      "category": "other / miscellaneous",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/weathermap.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 424,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "WeatherMap provides visual weather data, forecasts, and mappings, helping users understand climate patterns or track severe weather conditions",
        "categories": [
          {
            "id": "other-/-miscellaneous",
            "name": "other / miscellaneous"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/weathermap.png",
        "tool_count": 1
      }
    },
    {
      "id": "posthog",
      "key": "posthog",
      "name": "Posthog",
      "description": "PostHog is an open-source product analytics platform tracking user interactions and behaviors to help teams refine features, improve funnels, and reduce churn",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/posthog.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 681,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "PostHog is an open-source product analytics platform tracking user interactions and behaviors to help teams refine features, improve funnels, and reduce churn",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/posthog.svg",
        "tool_count": 358
      }
    },
    {
      "id": "clickup",
      "key": "clickup",
      "name": "Clickup",
      "description": "ClickUp unifies tasks, docs, goals, and chat in a single platform, allowing teams to plan, organize, and collaborate across projects with customizable workflows",
      "category": "productivity & project management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/clickup.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 409,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "ClickUp unifies tasks, docs, goals, and chat in a single platform, allowing teams to plan, organize, and collaborate across projects with customizable workflows",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/clickup.png",
        "tool_count": 126
      }
    },
    {
      "id": "brevo",
      "key": "brevo",
      "name": "Brevo",
      "description": "Brevo (formerly Sendinblue) is an all-in-one email and SMS marketing platform that provides transactional messaging, marketing automation, contact management, and CRM tools to help businesses communicate and engage with their customers.",
      "category": "email marketing",
      "icon": "https://www.brevo.com/favicon.ico",
      "isActive": false,
      "status": "offline",
      "usageCount": 462,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Brevo (formerly Sendinblue) is an all-in-one email and SMS marketing platform that provides transactional messaging, marketing automation, contact management, and CRM tools to help businesses communicate and engage with their customers.",
        "categories": [
          {
            "id": "email-marketing",
            "name": "email marketing"
          },
          {
            "id": "sms-marketing",
            "name": "sms marketing"
          },
          {
            "id": "marketing-automation",
            "name": "marketing automation"
          }
        ],
        "logo": "https://www.brevo.com/favicon.ico",
        "tool_count": 19
      }
    },
    {
      "id": "stripe",
      "key": "stripe",
      "name": "Stripe",
      "description": "Stripe offers online payment infrastructure, fraud prevention, and APIs enabling businesses to accept and manage payments globally",
      "category": "finance & accounting",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/stripe.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 579,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Stripe offers online payment infrastructure, fraud prevention, and APIs enabling businesses to accept and manage payments globally",
        "categories": [
          {
            "id": "finance-&-accounting",
            "name": "finance & accounting"
          },
          {
            "id": "e-commerce",
            "name": "e-commerce"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/stripe.jpeg",
        "tool_count": 33
      }
    },
    {
      "id": "klaviyo",
      "key": "klaviyo",
      "name": "Klaviyo",
      "description": "Klaviyo is a data-driven email and SMS marketing platform that allows e-commerce brands to deliver targeted messages, track conversions, and scale customer relationships",
      "category": "marketing & social media",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//klaviyo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 366,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Klaviyo is a data-driven email and SMS marketing platform that allows e-commerce brands to deliver targeted messages, track conversions, and scale customer relationships",
        "categories": [
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//klaviyo.png",
        "tool_count": 232
      }
    },
    {
      "id": "browserbase_tool",
      "key": "browserbase_tool",
      "name": "Browserbase tool",
      "description": "A browsing app that gets a URL, reads its contents, and returns it.",
      "category": "other / miscellaneous",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//browser-base.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 967,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "A browsing app that gets a URL, reads its contents, and returns it.",
        "categories": [
          {
            "id": "other-/-miscellaneous",
            "name": "other / miscellaneous"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//browser-base.jpeg",
        "tool_count": 1
      }
    },
    {
      "id": "mailchimp",
      "key": "mailchimp",
      "name": "Mailchimp",
      "description": "Mailchimp is an email marketing and automation platform providing campaign templates, audience segmentation, and performance analytics to drive engagement and conversions",
      "category": "marketing & social media",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/mailchimp.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 283,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Mailchimp is an email marketing and automation platform providing campaign templates, audience segmentation, and performance analytics to drive engagement and conversions",
        "categories": [
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/mailchimp.svg",
        "tool_count": 271
      }
    },
    {
      "id": "attio",
      "key": "attio",
      "name": "Attio",
      "description": "Attio is a fully customizable workspace for your team's relationships and workflows.",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//attio.webp",
      "isActive": false,
      "status": "offline",
      "usageCount": 393,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Attio is a fully customizable workspace for your team's relationships and workflows.",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//attio.webp",
        "tool_count": 11
      }
    },
    {
      "id": "googlemeet",
      "key": "googlemeet",
      "name": "Googlemeet",
      "description": "Google Meet is a video conferencing tool developed by Google.",
      "category": "collaboration & communication",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-meet.webp",
      "isActive": false,
      "status": "offline",
      "usageCount": 971,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Google Meet is a video conferencing tool developed by Google.",
        "categories": [
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-meet.webp",
        "tool_count": 5
      }
    },
    {
      "id": "text_to_pdf",
      "key": "text_to_pdf",
      "name": "Text to pdf",
      "description": "Convert text to PDF",
      "category": "ai & machine learning",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/texttopdf.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 282,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Convert text to PDF",
        "categories": [
          {
            "id": "ai-&-machine-learning",
            "name": "ai & machine learning"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/texttopdf.png",
        "tool_count": 1
      }
    },
    {
      "id": "zoho",
      "key": "zoho",
      "name": "Zoho",
      "description": "Zoho actions to interact with zoho CRM",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/zoho.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 827,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Zoho actions to interact with zoho CRM",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "sales-&-customer-support",
            "name": "sales & customer support"
          },
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/zoho.png",
        "tool_count": 6
      }
    },
    {
      "id": "fireflies",
      "key": "fireflies",
      "name": "Fireflies",
      "description": "Fireflies.ai helps your team transcribe, summarize, search, and analyze voice conversations.",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/fireflies.jpg",
      "isActive": false,
      "status": "offline",
      "usageCount": 7,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Fireflies.ai helps your team transcribe, summarize, search, and analyze voice conversations.",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/fireflies.jpg",
        "tool_count": 10
      }
    },
    {
      "id": "dropbox",
      "key": "dropbox",
      "name": "Dropbox",
      "description": "Dropbox is a file hosting service that offers cloud storage, file\n    synchronization, personal cloud, and client software.",
      "category": "document & file management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/dropbox.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 563,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Dropbox is a file hosting service that offers cloud storage, file\n    synchronization, personal cloud, and client software.",
        "categories": [
          {
            "id": "document-&-file-management",
            "name": "document & file management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/dropbox.svg",
        "tool_count": 11
      }
    },
    {
      "id": "shortcut",
      "key": "shortcut",
      "name": "Shortcut",
      "description": "Shortcut aligns product development work with company objectives so teams can execute with a shared purpose.",
      "category": "productivity & project management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//shortcut.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 147,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Shortcut aligns product development work with company objectives so teams can execute with a shared purpose.",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//shortcut.svg",
        "tool_count": 122
      }
    },
    {
      "id": "freshdesk",
      "key": "freshdesk",
      "name": "Freshdesk",
      "description": "A customer support platform that provides helpdesk support with all\n    smart automations to get things done faster.",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/freshdesk.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 729,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "A customer support platform that provides helpdesk support with all\n    smart automations to get things done faster.",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "sales-&-customer-support",
            "name": "sales & customer support"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/freshdesk.svg",
        "tool_count": 7
      }
    },
    {
      "id": "borneo",
      "key": "borneo",
      "name": "Borneo",
      "description": "Borneo is a data security and privacy platform designed for sensitive data discovery and remediation.",
      "category": "security & compliance",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/borneo.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 199,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Borneo is a data security and privacy platform designed for sensitive data discovery and remediation.",
        "categories": [
          {
            "id": "security-&-compliance",
            "name": "security & compliance"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/borneo.jpeg",
        "tool_count": 154
      }
    },
    {
      "id": "mixpanel",
      "key": "mixpanel",
      "name": "Mixpanel",
      "description": "Mixpanel is a product analytics platform tracking user interactions and engagement, providing cohort analysis, funnels, and A/B testing to improve user experiences",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/mixpanel.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 107,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Mixpanel is a product analytics platform tracking user interactions and engagement, providing cohort analysis, funnels, and A/B testing to improve user experiences",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/mixpanel.svg",
        "tool_count": 21
      }
    },
    {
      "id": "coda",
      "key": "coda",
      "name": "Coda",
      "description": "Collaborative workspace platform that transforms documents into powerful tools for team productivity and project management",
      "category": "productivity & project management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/coda.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 379,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Collaborative workspace platform that transforms documents into powerful tools for team productivity and project management",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/coda.png",
        "tool_count": 101
      }
    },
    {
      "id": "acculynx",
      "key": "acculynx",
      "name": "Acculynx",
      "description": "Using the AccuLynx API, data can be seamlessly exchanged between AccuLynx and other applications for greater efficiency and productivity.",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/acculynx.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 749,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Using the AccuLynx API, data can be seamlessly exchanged between AccuLynx and other applications for greater efficiency and productivity.",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/acculynx.jpeg",
        "tool_count": 8
      }
    },
    {
      "id": "ahrefs",
      "key": "ahrefs",
      "name": "Ahrefs",
      "description": "Ahrefs is an SEO and marketing platform offering site audits, keyword research, content analysis, and competitive insights to improve search rankings and drive organic traffic",
      "category": "marketing & social media",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/ahrefs.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 799,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Ahrefs is an SEO and marketing platform offering site audits, keyword research, content analysis, and competitive insights to improve search rankings and drive organic traffic",
        "categories": [
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/ahrefs.png",
        "tool_count": 40
      }
    },
    {
      "id": "affinity",
      "key": "affinity",
      "name": "Affinity",
      "description": "Affinity helps private capital investors to find, manage, and close more deals",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/affinity.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 602,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Affinity helps private capital investors to find, manage, and close more deals",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/affinity.jpeg",
        "tool_count": 20
      }
    },
    {
      "id": "amplitude",
      "key": "amplitude",
      "name": "Amplitude",
      "description": "Amplitude Inc. is an American publicly trading company that develops digital analytics software.",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//amplitude.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 810,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Amplitude Inc. is an American publicly trading company that develops digital analytics software.",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//amplitude.svg",
        "tool_count": 16
      }
    },
    {
      "id": "heygen",
      "key": "heygen",
      "name": "Heygen",
      "description": "HeyGen is an innovative video platform that harnesses the power of generative AI to streamline your video creation process",
      "category": "ai-video",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/heygen.jpg",
      "isActive": false,
      "status": "offline",
      "usageCount": 216,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "HeyGen is an innovative video platform that harnesses the power of generative AI to streamline your video creation process",
        "categories": [
          {
            "id": "ai-video",
            "name": "ai-video"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/heygen.jpg",
        "tool_count": 35
      }
    },
    {
      "id": "agencyzoom",
      "key": "agencyzoom",
      "name": "Agencyzoom",
      "description": "AgencyZoom is for the P&C insurance agent that's looking to increase sales, boost retention and analyze agency & producer performance.",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/agencyzoom_logo.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 101,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "AgencyZoom is for the P&C insurance agent that's looking to increase sales, boost retention and analyze agency & producer performance.",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/agencyzoom_logo.jpeg",
        "tool_count": 99
      }
    },
    {
      "id": "googlebigquery",
      "key": "googlebigquery",
      "name": "Googlebigquery",
      "description": "Connect to BigQuery to query BigData.",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/googl-bigquery.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 716,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Connect to BigQuery to query BigData.",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/googl-bigquery.svg",
        "tool_count": 1
      }
    },
    {
      "id": "microsoft_clarity",
      "key": "microsoft_clarity",
      "name": "Microsoft clarity",
      "description": "Microsoft Clarity is a free, easy-to-use tool that captures how real\n    people actually use your site.",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//microsoft-clarity-logo.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 411,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Microsoft Clarity is a free, easy-to-use tool that captures how real\n    people actually use your site.",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//microsoft-clarity-logo.jpeg",
        "tool_count": 1
      }
    },
    {
      "id": "coinbase",
      "key": "coinbase",
      "name": "Coinbase",
      "description": "Coinbase provides APIs for cryptocurrency trading and management.",
      "category": "cryptocurrency",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/coinbase.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 927,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Coinbase provides APIs for cryptocurrency trading and management.",
        "categories": [
          {
            "id": "cryptocurrency",
            "name": "cryptocurrency"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/coinbase.svg",
        "tool_count": 6
      }
    },
    {
      "id": "monday",
      "key": "monday",
      "name": "Monday",
      "description": "Monday is a cloud-based work operating system where teams create\n    workflow apps in minutes to run their processes, projects, and\n    everyday work.",
      "category": "productivity & project management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//monday.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 605,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Monday is a cloud-based work operating system where teams create\n    workflow apps in minutes to run their processes, projects, and\n    everyday work.",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//monday.png",
        "tool_count": 21
      }
    },
    {
      "id": "semanticscholar",
      "key": "semanticscholar",
      "name": "Semanticscholar",
      "description": "Semantic Scholar is an AI-powered academic search engine that helps researchers discover and understand scientific literature",
      "category": "ai & machine learning",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/semanticscholar.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 95,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Semantic Scholar is an AI-powered academic search engine that helps researchers discover and understand scientific literature",
        "categories": [
          {
            "id": "ai-&-machine-learning",
            "name": "ai & machine learning"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/semanticscholar.png",
        "tool_count": 14
      }
    },
    {
      "id": "sendgrid",
      "key": "sendgrid",
      "name": "Sendgrid",
      "description": "SendGrid is a cloud-based email delivery platform providing transactional and marketing email services, with APIs for integration, analytics, and scalability",
      "category": "marketing & social media",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/sendgrid.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 633,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "SendGrid is a cloud-based email delivery platform providing transactional and marketing email services, with APIs for integration, analytics, and scalability",
        "categories": [
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/sendgrid.png",
        "tool_count": 375
      }
    },
    {
      "id": "junglescout",
      "key": "junglescout",
      "name": "Junglescout",
      "description": "Jungle Scout assists Amazon sellers with product research, sales estimates, and competitive insights to optimize inventory, pricing, and listing strategies",
      "category": "e-commerce",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/junglescout.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 244,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Jungle Scout assists Amazon sellers with product research, sales estimates, and competitive insights to optimize inventory, pricing, and listing strategies",
        "categories": [
          {
            "id": "e-commerce",
            "name": "e-commerce"
          },
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/junglescout.jpeg",
        "tool_count": 6
      }
    },
    {
      "id": "pipedrive",
      "key": "pipedrive",
      "name": "Pipedrive",
      "description": "Pipedrive is a sales management tool built around pipeline visualization, lead tracking, activity reminders, and automation to keep deals progressing",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/pipedrive.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 671,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Pipedrive is a sales management tool built around pipeline visualization, lead tracking, activity reminders, and automation to keep deals progressing",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "sales-&-customer-support",
            "name": "sales & customer support"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/pipedrive.svg",
        "tool_count": 276
      }
    },
    {
      "id": "bamboohr",
      "key": "bamboohr",
      "name": "Bamboohr",
      "description": "BambooHR is an American technology company that provides human resources software as a service.",
      "category": "erp",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//bamboohr.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 538,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "BambooHR is an American technology company that provides human resources software as a service.",
        "categories": [
          {
            "id": "erp",
            "name": "erp"
          },
          {
            "id": "crm",
            "name": "crm"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//bamboohr.svg",
        "tool_count": 159
      }
    },
    {
      "id": "whatsapp",
      "key": "whatsapp",
      "name": "Whatsapp",
      "description": "Enables interaction with customers through the WhatsApp Business API for messaging and automation.",
      "category": "communication",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//whatsapp.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 101,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Enables interaction with customers through the WhatsApp Business API for messaging and automation.",
        "categories": [
          {
            "id": "communication",
            "name": "communication"
          },
          {
            "id": "messaging",
            "name": "messaging"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//whatsapp.png",
        "tool_count": 5
      }
    },
    {
      "id": "dynamics365",
      "key": "dynamics365",
      "name": "Dynamics365",
      "description": "Dynamics 365 from Microsoft combines CRM, ERP, and productivity apps to streamline sales, marketing, customer service, and operations in one integrated platform",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Dynamics%20365%20Icon.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 759,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Dynamics 365 from Microsoft combines CRM, ERP, and productivity apps to streamline sales, marketing, customer service, and operations in one integrated platform",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "sales-&-customer-support",
            "name": "sales & customer support"
          },
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Dynamics%20365%20Icon.svg",
        "tool_count": 17
      }
    },
    {
      "id": "zendesk",
      "key": "zendesk",
      "name": "Zendesk",
      "description": "Zendesk is a customer service and sales platform that helps businesses manage customer communication and support",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/zendesk.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 910,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Zendesk is a customer service and sales platform that helps businesses manage customer communication and support",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "sales-&-customer-support",
            "name": "sales & customer support"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/zendesk.svg",
        "tool_count": 11
      }
    },
    {
      "id": "googlephotos",
      "key": "googlephotos",
      "name": "Googlephotos",
      "description": "Google Photos is a photo and video storage service that is part of the\n    Google Drive office suite.",
      "category": "document & file management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Google_Photos.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 378,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Google Photos is a photo and video storage service that is part of the\n    Google Drive office suite.",
        "categories": [
          {
            "id": "document-&-file-management",
            "name": "document & file management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Google_Photos.png",
        "tool_count": 13
      }
    },
    {
      "id": "lmnt",
      "key": "lmnt",
      "name": "Lmnt",
      "description": "LMNT is an API for text-to-speech and voice cloning",
      "category": "ai & machine learning",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/lmnt_logo.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 850,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "LMNT is an API for text-to-speech and voice cloning",
        "categories": [
          {
            "id": "ai-&-machine-learning",
            "name": "ai & machine learning"
          },
          {
            "id": "other-/-miscellaneous",
            "name": "other / miscellaneous"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/lmnt_logo.jpeg",
        "tool_count": 7
      }
    },
    {
      "id": "metaads",
      "key": "metaads",
      "name": "Metaads",
      "description": "Meta Ads Marketing API Integration\n\n    This tool provides access to Meta's Marketing API for managing ad campaigns,\n    ad sets, ads, and custom audiences, as well as retrieving insights and analytics.",
      "category": "social media",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/meta-icon.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 96,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Meta Ads Marketing API Integration\n\n    This tool provides access to Meta's Marketing API for managing ad campaigns,\n    ad sets, ads, and custom audiences, as well as retrieving insights and analytics.",
        "categories": [
          {
            "id": "social-media",
            "name": "social media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/meta-icon.svg",
        "tool_count": 16
      }
    },
    {
      "id": "zenrows",
      "key": "zenrows",
      "name": "Zenrows",
      "description": "ZenRows is a web scraping API allowing developers to bypass CAPTCHAs and blocks, gather structured data from dynamic websites, and quickly integrate results into applications",
      "category": "developer tools & devops",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/zenrows.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 621,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "ZenRows is a web scraping API allowing developers to bypass CAPTCHAs and blocks, gather structured data from dynamic websites, and quickly integrate results into applications",
        "categories": [
          {
            "id": "developer-tools-&-devops",
            "name": "developer tools & devops"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/zenrows.jpeg",
        "tool_count": 16
      }
    },
    {
      "id": "googlesuper",
      "key": "googlesuper",
      "name": "Googlesuper",
      "description": "Google Super App combines all Google services including Drive, Calendar, Gmail, Sheets, Analytics, Ads, and more, providing a unified platform for seamless integration and management of your digital life.",
      "category": "document & file management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 506,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Google Super App combines all Google services including Drive, Calendar, Gmail, Sheets, Analytics, Ads, and more, providing a unified platform for seamless integration and management of your digital life.",
        "categories": [
          {
            "id": "document-&-file-management",
            "name": "document & file management"
          },
          {
            "id": "scheduling-&-booking",
            "name": "scheduling & booking"
          },
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          },
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          },
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          },
          {
            "id": "advertising-&-marketing",
            "name": "advertising & marketing"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google.svg",
        "tool_count": 101
      }
    },
    {
      "id": "yousearch",
      "key": "yousearch",
      "name": "Yousearch",
      "description": "YouSearch is a search engine or search tool that enables users to find relevant information, possibly with enhanced filtering or privacy-focused features",
      "category": "other / miscellaneous",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//you.webp",
      "isActive": false,
      "status": "offline",
      "usageCount": 742,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "YouSearch is a search engine or search tool that enables users to find relevant information, possibly with enhanced filtering or privacy-focused features",
        "categories": [
          {
            "id": "other-/-miscellaneous",
            "name": "other / miscellaneous"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//you.webp",
        "tool_count": 1
      }
    },
    {
      "id": "linkup",
      "key": "linkup",
      "name": "Linkup",
      "description": "Search the Web for Relevant Results (RAG Use Case)",
      "category": "other / miscellaneous",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/linkup.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 59,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Search the Web for Relevant Results (RAG Use Case)",
        "categories": [
          {
            "id": "other-/-miscellaneous",
            "name": "other / miscellaneous"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/linkup.jpeg",
        "tool_count": 2
      }
    },
    {
      "id": "listennotes",
      "key": "listennotes",
      "name": "Listennotes",
      "description": "The best podcast search engine.",
      "category": "podcast",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/listennotes.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 913,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "The best podcast search engine.",
        "categories": [
          {
            "id": "podcast",
            "name": "podcast"
          },
          {
            "id": "productivity",
            "name": "productivity"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/listennotes.png",
        "tool_count": 26
      }
    },
    {
      "id": "typefully",
      "key": "typefully",
      "name": "Typefully",
      "description": "Integrate Typefully to streamline and manage your AI-powered content creation.",
      "category": "ai & machine learning",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/typefully.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 235,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Integrate Typefully to streamline and manage your AI-powered content creation.",
        "categories": [
          {
            "id": "ai-&-machine-learning",
            "name": "ai & machine learning"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/typefully.png",
        "tool_count": 5
      }
    },
    {
      "id": "bolna",
      "key": "bolna",
      "name": "Bolna",
      "description": "Create conversational voice agents using Bolna AI to enhance interactions, streamline operations and automate support.",
      "category": "productivity",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/bolna-logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 784,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Create conversational voice agents using Bolna AI to enhance interactions, streamline operations and automate support.",
        "categories": [
          {
            "id": "productivity",
            "name": "productivity"
          },
          {
            "id": "dev-tools",
            "name": "dev-tools"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/bolna-logo.png",
        "tool_count": 15
      }
    },
    {
      "id": "rocketlane",
      "key": "rocketlane",
      "name": "Rocketlane",
      "description": "Collaborative customer onboarding and implementation platform for professional services teams.",
      "category": "project management",
      "icon": "https://rocketlane.com/favicon.ico",
      "isActive": false,
      "status": "offline",
      "usageCount": 277,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Collaborative customer onboarding and implementation platform for professional services teams.",
        "categories": [
          {
            "id": "project-management",
            "name": "project management"
          },
          {
            "id": "customer-onboarding",
            "name": "customer onboarding"
          },
          {
            "id": "professional-services",
            "name": "professional services"
          },
          {
            "id": "collaboration",
            "name": "collaboration"
          }
        ],
        "logo": "https://rocketlane.com/favicon.ico",
        "tool_count": 17
      }
    },
    {
      "id": "bill",
      "key": "bill",
      "name": "Bill",
      "description": "Integration with Bill.com API",
      "category": "accounting",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/bill.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 349,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Integration with Bill.com API",
        "categories": [
          {
            "id": "accounting",
            "name": "accounting"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/bill.jpeg",
        "tool_count": 221
      }
    },
    {
      "id": "zoom",
      "key": "zoom",
      "name": "Zoom",
      "description": "Zoom is a video conferencing and online meeting platform featuring breakout rooms, screen sharing, and integrations with various enterprise tools",
      "category": "collaboration & communication",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/zoom.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 417,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Zoom is a video conferencing and online meeting platform featuring breakout rooms, screen sharing, and integrations with various enterprise tools",
        "categories": [
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/zoom.svg",
        "tool_count": 172
      }
    },
    {
      "id": "onepage",
      "key": "onepage",
      "name": "Onepage",
      "description": "API for enriching user and company data, providing endpoints for token validation and generic search.",
      "category": "productivity & project management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/onepage.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 56,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "API for enriching user and company data, providing endpoints for token validation and generic search.",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          },
          {
            "id": "ai-&-machine-learning",
            "name": "ai & machine learning"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/onepage.svg",
        "tool_count": 2
      }
    },
    {
      "id": "entelligence",
      "key": "entelligence",
      "name": "Entelligence",
      "description": "Entelligence leverages artificial intelligence to provide insights, recommendations, and predictive analytics for businesses seeking data-driven decision-making capabilities",
      "category": "ai & machine learning",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/entelligence.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 549,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Entelligence leverages artificial intelligence to provide insights, recommendations, and predictive analytics for businesses seeking data-driven decision-making capabilities",
        "categories": [
          {
            "id": "ai-&-machine-learning",
            "name": "ai & machine learning"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/entelligence.png",
        "tool_count": 2
      }
    },
    {
      "id": "retellai",
      "key": "retellai",
      "name": "Retellai",
      "description": "RetellAI captures calls and transcripts, enabling businesses to analyze conversations, extract insights, and enhance customer interactions in one centralized platform",
      "category": "collaboration & communication",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/retellai.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 410,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "RetellAI captures calls and transcripts, enabling businesses to analyze conversations, extract insights, and enhance customer interactions in one centralized platform",
        "categories": [
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/retellai.jpeg",
        "tool_count": 10
      }
    },
    {
      "id": "servicenow",
      "key": "servicenow",
      "name": "Servicenow",
      "description": "Servicenow provides IT Service Management Transform service management to boost productivity and maximize ROI",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/servicenow.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 235,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Servicenow provides IT Service Management Transform service management to boost productivity and maximize ROI",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/servicenow.png",
        "tool_count": 5
      }
    },
    {
      "id": "googleads",
      "key": "googleads",
      "name": "Googleads",
      "description": "Connect to Google Ads to manage and create campaigns.",
      "category": "advertising & marketing",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/googleads.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 821,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Connect to Google Ads to manage and create campaigns.",
        "categories": [
          {
            "id": "advertising-&-marketing",
            "name": "advertising & marketing"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/googleads.png",
        "tool_count": 6
      }
    },
    {
      "id": "pagerduty",
      "key": "pagerduty",
      "name": "Pagerduty",
      "description": "Integrate PagerDuty to manage incidents, schedules, and alerts directly from your application.",
      "category": "developer tools & devops",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/pagerduty.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 63,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Integrate PagerDuty to manage incidents, schedules, and alerts directly from your application.",
        "categories": [
          {
            "id": "developer-tools-&-devops",
            "name": "developer tools & devops"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/pagerduty.png",
        "tool_count": 354
      }
    },
    {
      "id": "finage",
      "key": "finage",
      "name": "Finage",
      "description": "Finage provides secure RESTful APIs for real-time and historical financial market data covering stocks, forex, cryptocurrencies, indices, ETFs, and commodities.",
      "category": "finance",
      "icon": "https://finage.co.uk/favicon.ico",
      "isActive": false,
      "status": "offline",
      "usageCount": 937,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Finage provides secure RESTful APIs for real-time and historical financial market data covering stocks, forex, cryptocurrencies, indices, ETFs, and commodities.",
        "categories": [
          {
            "id": "finance",
            "name": "finance"
          },
          {
            "id": "market-data",
            "name": "market data"
          }
        ],
        "logo": "https://finage.co.uk/favicon.ico",
        "tool_count": 10
      }
    },
    {
      "id": "fomo",
      "key": "fomo",
      "name": "Fomo",
      "description": "Fomo is a social proof marketing platform that displays real-time user activity notifications on websites to build trust and increase conversions.",
      "category": "marketing",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/fomo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 693,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Fomo is a social proof marketing platform that displays real-time user activity notifications on websites to build trust and increase conversions.",
        "categories": [
          {
            "id": "marketing",
            "name": "marketing"
          },
          {
            "id": "notifications",
            "name": "notifications"
          },
          {
            "id": "social-proof",
            "name": "social proof"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/fomo.png",
        "tool_count": 1
      }
    },
    {
      "id": "bannerbear",
      "key": "bannerbear",
      "name": "Bannerbear",
      "description": "Bannerbear offers an automated image and video generation API, allowing businesses to create graphics, social media visuals, and marketing collateral with customizable templates at scale",
      "category": "workflow automation",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//bannerbear-logo.jpg",
      "isActive": false,
      "status": "offline",
      "usageCount": 513,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Bannerbear offers an automated image and video generation API, allowing businesses to create graphics, social media visuals, and marketing collateral with customizable templates at scale",
        "categories": [
          {
            "id": "workflow-automation",
            "name": "workflow automation"
          },
          {
            "id": "design-&-creative-tools",
            "name": "design & creative tools"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//bannerbear-logo.jpg",
        "tool_count": 8
      }
    },
    {
      "id": "share_point",
      "key": "share_point",
      "name": "Share point",
      "description": "SharePoint is a Microsoft platform for document management and intranets, enabling teams to collaborate, store, and organize content securely and effectively",
      "category": "collaboration & communication",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/sharepoint-icon.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 842,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "SharePoint is a Microsoft platform for document management and intranets, enabling teams to collaborate, store, and organize content securely and effectively",
        "categories": [
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/sharepoint-icon.svg",
        "tool_count": 6
      }
    },
    {
      "id": "contentful",
      "key": "contentful",
      "name": "Contentful",
      "description": "Contentful provides a content platform with APIs for managing and\n    delivering content to apps and websites.",
      "category": "developer tools & devops",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//contentful-logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 754,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Contentful provides a content platform with APIs for managing and\n    delivering content to apps and websites.",
        "categories": [
          {
            "id": "developer-tools-&-devops",
            "name": "developer tools & devops"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//contentful-logo.png",
        "tool_count": 3
      }
    },
    {
      "id": "close",
      "key": "close",
      "name": "Close",
      "description": "Close is a CRM platform designed to help businesses manage and streamline their sales processes, including calling, email automation, and predictive dialers.",
      "category": "crm",
      "icon": "https://www.close.com/logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 709,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Close is a CRM platform designed to help businesses manage and streamline their sales processes, including calling, email automation, and predictive dialers.",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "sales-automation",
            "name": "sales automation"
          },
          {
            "id": "email-automation",
            "name": "email automation"
          }
        ],
        "logo": "https://www.close.com/logo.png",
        "tool_count": 6
      }
    },
    {
      "id": "ably",
      "key": "ably",
      "name": "Ably",
      "description": "Ably is a real-time messaging platform helping developers build live features, including chat and data synchronization, with global scalability and robust reliability for modern applications",
      "category": "developer tools & devops",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/ably.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 384,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Ably is a real-time messaging platform helping developers build live features, including chat and data synchronization, with global scalability and robust reliability for modern applications",
        "categories": [
          {
            "id": "developer-tools-&-devops",
            "name": "developer tools & devops"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/ably.svg",
        "tool_count": 11
      }
    },
    {
      "id": "more_trees",
      "key": "more_trees",
      "name": "More trees",
      "description": "More Trees is a sustainability-focused platform planting trees on behalf of individuals or businesses aiming to offset carbon footprints and support reforestation",
      "category": "other / miscellaneous",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//more-trees.jpg",
      "isActive": false,
      "status": "offline",
      "usageCount": 793,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "More Trees is a sustainability-focused platform planting trees on behalf of individuals or businesses aiming to offset carbon footprints and support reforestation",
        "categories": [
          {
            "id": "other-/-miscellaneous",
            "name": "other / miscellaneous"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//more-trees.jpg",
        "tool_count": 1
      }
    },
    {
      "id": "recallai",
      "key": "recallai",
      "name": "Recallai",
      "description": "Recall.ai provides a single API for meeting bots on every platform like Zoom, Google Meet, Microsoft Teams and more.",
      "category": "finance & accounting",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/recall.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 675,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Recall.ai provides a single API for meeting bots on every platform like Zoom, Google Meet, Microsoft Teams and more.",
        "categories": [
          {
            "id": "finance-&-accounting",
            "name": "finance & accounting"
          },
          {
            "id": "e-commerce",
            "name": "e-commerce"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/recall.svg",
        "tool_count": 8
      }
    },
    {
      "id": "apaleo",
      "key": "apaleo",
      "name": "Apaleo",
      "description": "Apaleo is a cloud-based property management platform handling reservations, billing, and daily operations for hospitality businesses",
      "category": "scheduling & booking",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/apaleo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 207,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Apaleo is a cloud-based property management platform handling reservations, billing, and daily operations for hospitality businesses",
        "categories": [
          {
            "id": "scheduling-&-booking",
            "name": "scheduling & booking"
          },
          {
            "id": "finance-&-accounting",
            "name": "finance & accounting"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/apaleo.png",
        "tool_count": 29
      }
    },
    {
      "id": "crustdata",
      "key": "crustdata",
      "name": "Crustdata",
      "description": "CrustData is an AI-powered data intelligence platform that provides real-time company and people data via APIs and webhooks, empowering B2B sales teams, AI SDRs, and investors to act on live signals",
      "category": "marketing & social media",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/crustdata.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 987,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "CrustData is an AI-powered data intelligence platform that provides real-time company and people data via APIs and webhooks, empowering B2B sales teams, AI SDRs, and investors to act on live signals",
        "categories": [
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/crustdata.png",
        "tool_count": 14
      }
    },
    {
      "id": "brandfetch",
      "key": "brandfetch",
      "name": "Brandfetch",
      "description": "Brandfetch offers an API that retrieves company logos, brand colors, and other visual assets, helping marketers and developers maintain consistent branding across apps",
      "category": "marketing & social media",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/brandfetch-logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 686,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Brandfetch offers an API that retrieves company logos, brand colors, and other visual assets, helping marketers and developers maintain consistent branding across apps",
        "categories": [
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/brandfetch-logo.png",
        "tool_count": 6
      }
    },
    {
      "id": "canva",
      "key": "canva",
      "name": "Canva",
      "description": "Canva offers a drag-and-drop design suite for creating social media graphics, presentations, and marketing materials with prebuilt templates and a vast element library",
      "category": "design & creative tools",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/canva.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 399,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Canva offers a drag-and-drop design suite for creating social media graphics, presentations, and marketing materials with prebuilt templates and a vast element library",
        "categories": [
          {
            "id": "design-&-creative-tools",
            "name": "design & creative tools"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/canva.jpeg",
        "tool_count": 32
      }
    },
    {
      "id": "dailybot",
      "key": "dailybot",
      "name": "Dailybot",
      "description": "DailyBot simplifies team collaboration and tasks with chat-based standups, reminders, polls, and integrations, streamlining workflow automation in popular messaging platforms",
      "category": "collaboration & communication",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//dailybot.jpg",
      "isActive": false,
      "status": "offline",
      "usageCount": 679,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "DailyBot simplifies team collaboration and tasks with chat-based standups, reminders, polls, and integrations, streamlining workflow automation in popular messaging platforms",
        "categories": [
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          },
          {
            "id": "workflow-automation",
            "name": "workflow automation"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//dailybot.jpg",
        "tool_count": 6
      }
    },
    {
      "id": "linkhut",
      "key": "linkhut",
      "name": "Linkhut",
      "description": "LinkHut manages bookmarked links in a minimalistic, shareable interface, helping teams organize URLs and track references in one place",
      "category": "productivity & project management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/linkhut.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 621,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "LinkHut manages bookmarked links in a minimalistic, shareable interface, helping teams organize URLs and track references in one place",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/linkhut.svg",
        "tool_count": 5
      }
    },
    {
      "id": "box",
      "key": "box",
      "name": "Box",
      "description": "Cloud content management and file sharing service for businesses.",
      "category": "knowledge-base",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/box.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 710,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Cloud content management and file sharing service for businesses.",
        "categories": [
          {
            "id": "knowledge-base",
            "name": "knowledge-base"
          },
          {
            "id": "storage",
            "name": "storage"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/box.svg",
        "tool_count": 273
      }
    },
    {
      "id": "smugmug",
      "key": "smugmug",
      "name": "Smugmug",
      "description": "SmugMug is a platform for photographers to showcase, share, and sell their photos and videos.",
      "category": "photography",
      "icon": "https://www.smugmug.com/favicon.ico",
      "isActive": false,
      "status": "offline",
      "usageCount": 48,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "SmugMug is a platform for photographers to showcase, share, and sell their photos and videos.",
        "categories": [
          {
            "id": "photography",
            "name": "photography"
          },
          {
            "id": "photo-sharing",
            "name": "photo sharing"
          },
          {
            "id": "online-galleries",
            "name": "online galleries"
          }
        ],
        "logo": "https://www.smugmug.com/favicon.ico",
        "tool_count": 5
      }
    },
    {
      "id": "webflow",
      "key": "webflow",
      "name": "Webflow",
      "description": "Webflow is a no-code website design and hosting platform, letting users build responsive sites, launch online stores, and maintain content without coding",
      "category": "design & creative tools",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//webflow.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 902,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Webflow is a no-code website design and hosting platform, letting users build responsive sites, launch online stores, and maintain content without coding",
        "categories": [
          {
            "id": "design-&-creative-tools",
            "name": "design & creative tools"
          },
          {
            "id": "e-commerce",
            "name": "e-commerce"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//webflow.jpeg",
        "tool_count": 21
      }
    },
    {
      "id": "amcards",
      "key": "amcards",
      "name": "Amcards",
      "description": "AMCards enables users to create personalized greeting cards, automate mailing campaigns, strengthen customer relationships using a convenient online platform for individualized connections",
      "category": "marketing & social media",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//amcards.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 506,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "AMCards enables users to create personalized greeting cards, automate mailing campaigns, strengthen customer relationships using a convenient online platform for individualized connections",
        "categories": [
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//amcards.svg",
        "tool_count": 2
      }
    },
    {
      "id": "simplesat",
      "key": "simplesat",
      "name": "Simplesat",
      "description": "Simplesat captures customer feedback and CSAT scores through surveys, integrating directly with helpdesk systems for real-time performance insights",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//simplesat.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 987,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Simplesat captures customer feedback and CSAT scores through surveys, integrating directly with helpdesk systems for real-time performance insights",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "sales-&-customer-support",
            "name": "sales & customer support"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//simplesat.jpeg",
        "tool_count": 2
      }
    },
    {
      "id": "flutterwave",
      "key": "flutterwave",
      "name": "Flutterwave",
      "description": "Flutterwave provides APIs for making and receiving payments in various\n    currencies and countries.",
      "category": "finance & accounting",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//flutterwave.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 855,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Flutterwave provides APIs for making and receiving payments in various\n    currencies and countries.",
        "categories": [
          {
            "id": "finance-&-accounting",
            "name": "finance & accounting"
          },
          {
            "id": "e-commerce",
            "name": "e-commerce"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//flutterwave.png",
        "tool_count": 2
      }
    },
    {
      "id": "process_street",
      "key": "process_street",
      "name": "Process street",
      "description": "Process Street supports creating and running checklists, SOPs, and workflows, helping teams automate recurring processes and track compliance",
      "category": "workflow automation",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//process-street-logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 334,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Process Street supports creating and running checklists, SOPs, and workflows, helping teams automate recurring processes and track compliance",
        "categories": [
          {
            "id": "workflow-automation",
            "name": "workflow automation"
          },
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//process-street-logo.png",
        "tool_count": 5
      }
    },
    {
      "id": "screenshotone",
      "key": "screenshotone",
      "name": "Screenshotone",
      "description": "ScreenshotOne is a screenshot API for developers, enabling the rendering of website screenshots through simple API calls without managing browser clusters.",
      "category": "api",
      "icon": "https://screenshotone.com/logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 701,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "ScreenshotOne is a screenshot API for developers, enabling the rendering of website screenshots through simple API calls without managing browser clusters.",
        "categories": [
          {
            "id": "api",
            "name": "api"
          },
          {
            "id": "web-development",
            "name": "web development"
          },
          {
            "id": "screenshot-service",
            "name": "screenshot service"
          }
        ],
        "logo": "https://screenshotone.com/logo.png",
        "tool_count": 1
      }
    },
    {
      "id": "chatwork",
      "key": "chatwork",
      "name": "Chatwork",
      "description": "Chatwork is a team communication platform featuring group chats, file sharing, and task management, aiming to enhance collaboration and productivity for businesses",
      "category": "collaboration & communication",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//chatwork-logo.jpg",
      "isActive": false,
      "status": "offline",
      "usageCount": 786,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Chatwork is a team communication platform featuring group chats, file sharing, and task management, aiming to enhance collaboration and productivity for businesses",
        "categories": [
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//chatwork-logo.jpg",
        "tool_count": 8
      }
    },
    {
      "id": "klipfolio",
      "key": "klipfolio",
      "name": "Klipfolio",
      "description": "Klipfolio is a cloud-based business intelligence platform that enables users to create and share real-time dashboards and reports.",
      "category": "business intelligence",
      "icon": "https://www.klipfolio.com/sites/default/files/klipfolio-logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 893,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Klipfolio is a cloud-based business intelligence platform that enables users to create and share real-time dashboards and reports.",
        "categories": [
          {
            "id": "business-intelligence",
            "name": "business intelligence"
          },
          {
            "id": "data-visualization",
            "name": "data visualization"
          },
          {
            "id": "dashboard-software",
            "name": "dashboard software"
          }
        ],
        "logo": "https://www.klipfolio.com/sites/default/files/klipfolio-logo.png",
        "tool_count": 11
      }
    },
    {
      "id": "altoviz",
      "key": "altoviz",
      "name": "Altoviz",
      "description": "Altoviz is a cloud-based billing and invoicing platform for businesses, offering online payments, expense tracking, document management, and customizable invoices.",
      "category": "finance",
      "icon": "https://altoviz.com/favicon.ico",
      "isActive": false,
      "status": "offline",
      "usageCount": 454,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Altoviz is a cloud-based billing and invoicing platform for businesses, offering online payments, expense tracking, document management, and customizable invoices.",
        "categories": [
          {
            "id": "finance",
            "name": "finance"
          },
          {
            "id": "accounting",
            "name": "accounting"
          },
          {
            "id": "invoicing",
            "name": "invoicing"
          }
        ],
        "logo": "https://altoviz.com/favicon.ico",
        "tool_count": 9
      }
    },
    {
      "id": "d2lbrightspace",
      "key": "d2lbrightspace",
      "name": "D2lbrightspace",
      "description": "D2L Brightspace provides APIs for building custom integrations and add-ons\n    for the D2L Brightspace platform.",
      "category": "education & lms",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/d2lbrightspace.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 679,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "D2L Brightspace provides APIs for building custom integrations and add-ons\n    for the D2L Brightspace platform.",
        "categories": [
          {
            "id": "education-&-lms",
            "name": "education & lms"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/d2lbrightspace.png",
        "tool_count": 45
      }
    },
    {
      "id": "blackboard",
      "key": "blackboard",
      "name": "Blackboard",
      "description": "Anthology Adopt powered by Pendo allows institutions to gain insights on Blackboard Learn usage and take action through in-app messages, digital walkthrough guides, and tooltips.",
      "category": "ed",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Blackboard.jpg",
      "isActive": false,
      "status": "offline",
      "usageCount": 883,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Anthology Adopt powered by Pendo allows institutions to gain insights on Blackboard Learn usage and take action through in-app messages, digital walkthrough guides, and tooltips.",
        "categories": [
          {
            "id": "ed",
            "name": "ed"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Blackboard.jpg",
        "tool_count": 314
      }
    },
    {
      "id": "pandadoc",
      "key": "pandadoc",
      "name": "Pandadoc",
      "description": "PandaDoc offers document creation, e-signatures, and workflow automation, helping sales teams and businesses streamline proposals, contracts, and agreement processes",
      "category": "document & file management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/pandadoc.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 230,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "PandaDoc offers document creation, e-signatures, and workflow automation, helping sales teams and businesses streamline proposals, contracts, and agreement processes",
        "categories": [
          {
            "id": "document-&-file-management",
            "name": "document & file management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/pandadoc.svg",
        "tool_count": 14
      }
    },
    {
      "id": "workiom",
      "key": "workiom",
      "name": "Workiom",
      "description": "Workiom provides APIs for automating workflows, integrating with\n    various tools, and building custom applications.",
      "category": "workflow automation",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//workiom.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 569,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Workiom provides APIs for automating workflows, integrating with\n    various tools, and building custom applications.",
        "categories": [
          {
            "id": "workflow-automation",
            "name": "workflow automation"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//workiom.jpeg",
        "tool_count": 3
      }
    },
    {
      "id": "gorgias",
      "key": "gorgias",
      "name": "Gorgias",
      "description": "Integration for Gorgias, focusing on e-commerce enhancements.",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//gorgias.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 872,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Integration for Gorgias, focusing on e-commerce enhancements.",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "sales-&-customer-support",
            "name": "sales & customer support"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//gorgias.png",
        "tool_count": 32
      }
    },
    {
      "id": "todoist",
      "key": "todoist",
      "name": "Todoist",
      "description": "Todoist is a task management tool allowing users to create to-do lists, set deadlines, and collaborate on projects with reminders and cross-platform syncing",
      "category": "productivity & project management",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/todoist.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 671,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Todoist is a task management tool allowing users to create to-do lists, set deadlines, and collaborate on projects with reminders and cross-platform syncing",
        "categories": [
          {
            "id": "productivity-&-project-management",
            "name": "productivity & project management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/todoist.svg",
        "tool_count": 7
      }
    },
    {
      "id": "ngrok",
      "key": "ngrok",
      "name": "Ngrok",
      "description": "Ngrok creates secure tunnels to locally hosted applications, enabling developers to share and test webhooks or services without configuring complex network settings",
      "category": "developer tools & devops",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//ngrok-logo.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 82,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Ngrok creates secure tunnels to locally hosted applications, enabling developers to share and test webhooks or services without configuring complex network settings",
        "categories": [
          {
            "id": "developer-tools-&-devops",
            "name": "developer tools & devops"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//ngrok-logo.jpeg",
        "tool_count": 9
      }
    },
    {
      "id": "baserow",
      "key": "baserow",
      "name": "Baserow",
      "description": "Baserow is an open-source database tool that lets teams build no-code data applications, collaborate on records, and integrate with other services for data management",
      "category": "developer tools & devops",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//baserow-logo.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 391,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Baserow is an open-source database tool that lets teams build no-code data applications, collaborate on records, and integrate with other services for data management",
        "categories": [
          {
            "id": "developer-tools-&-devops",
            "name": "developer tools & devops"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//baserow-logo.jpeg",
        "tool_count": 2
      }
    },
    {
      "id": "dialpad",
      "key": "dialpad",
      "name": "Dialpad",
      "description": "Dialpad is a cloud-based business phone system and contact center platform that enables voice, video, messages and meetings across your existing devices",
      "category": "collaboration & communication",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/dialpad.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 462,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Dialpad is a cloud-based business phone system and contact center platform that enables voice, video, messages and meetings across your existing devices",
        "categories": [
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/dialpad.png",
        "tool_count": 192
      }
    },
    {
      "id": "formsite",
      "key": "formsite",
      "name": "Formsite",
      "description": "Formsite helps users create online forms and surveys with drag-and-drop tools, secure data capture, and integrations to simplify workflows",
      "category": "workflow automation",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//formsite.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 377,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Formsite helps users create online forms and surveys with drag-and-drop tools, secure data capture, and integrations to simplify workflows",
        "categories": [
          {
            "id": "workflow-automation",
            "name": "workflow automation"
          },
          {
            "id": "document-&-file-management",
            "name": "document & file management"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//formsite.png",
        "tool_count": 5
      }
    },
    {
      "id": "kommo",
      "key": "kommo",
      "name": "Kommo",
      "description": "Kommo CRM (formerly amoCRM) integration tool for managing customer relationships,\n    sales pipelines, and business processes. This tool enables automation of various\n    CRM operations including:",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/kommo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 9,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Kommo CRM (formerly amoCRM) integration tool for managing customer relationships,\n    sales pipelines, and business processes. This tool enables automation of various\n    CRM operations including:",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/kommo.png",
        "tool_count": 15
      }
    },
    {
      "id": "browseai",
      "key": "browseai",
      "name": "Browseai",
      "description": "Browse.ai allows you to turn any website into an API using its advanced web automation and data extraction tools, enabling easy monitoring and data retrieval from websites.",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/browseai.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 969,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Browse.ai allows you to turn any website into an API using its advanced web automation and data extraction tools, enabling easy monitoring and data retrieval from websites.",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          },
          {
            "id": "workflow-automation",
            "name": "workflow automation"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/browseai.svg",
        "tool_count": 9
      }
    },
    {
      "id": "maintainx",
      "key": "maintainx",
      "name": "Maintainx",
      "description": "MaintainX is a cloud-based computerized maintenance management system (CMMS) that helps organizations centralize maintenance data, communication, and workflows.",
      "category": "maintenance management",
      "icon": "https://www.getmaintainx.com/favicon.ico",
      "isActive": false,
      "status": "offline",
      "usageCount": 674,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "MaintainX is a cloud-based computerized maintenance management system (CMMS) that helps organizations centralize maintenance data, communication, and workflows.",
        "categories": [
          {
            "id": "maintenance-management",
            "name": "maintenance management"
          },
          {
            "id": "asset-management",
            "name": "asset management"
          },
          {
            "id": "workflow-automation",
            "name": "workflow automation"
          }
        ],
        "logo": "https://www.getmaintainx.com/favicon.ico",
        "tool_count": 11
      }
    },
    {
      "id": "tinyurl",
      "key": "tinyurl",
      "name": "Tinyurl",
      "description": "TinyURL provides APIs for shortening long URLs into compact, branded\n    links and tracking link analytics.",
      "category": "other / miscellaneous",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//tinyurl-logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 278,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "TinyURL provides APIs for shortening long URLs into compact, branded\n    links and tracking link analytics.",
        "categories": [
          {
            "id": "other-/-miscellaneous",
            "name": "other / miscellaneous"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//tinyurl-logo.png",
        "tool_count": 1
      }
    },
    {
      "id": "timecamp",
      "key": "timecamp",
      "name": "Timecamp",
      "description": "TimeCamp is a time tracking solution designed to help businesses of all sizes track time for projects to maximize their profits.",
      "category": "time tracking",
      "icon": "https://www.timecamp.com/images/logo.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 182,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "TimeCamp is a time tracking solution designed to help businesses of all sizes track time for projects to maximize their profits.",
        "categories": [
          {
            "id": "time-tracking",
            "name": "time tracking"
          },
          {
            "id": "productivity",
            "name": "productivity"
          },
          {
            "id": "project-management",
            "name": "project management"
          }
        ],
        "logo": "https://www.timecamp.com/images/logo.svg",
        "tool_count": 1
      }
    },
    {
      "id": "alchemy",
      "key": "alchemy",
      "name": "Alchemy",
      "description": "Alchemy is a blockchain development platform that provides powerful APIs and developer tools for building and scaling Ethereum applications",
      "category": "blockchain",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//tapformio.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 380,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Alchemy is a blockchain development platform that provides powerful APIs and developer tools for building and scaling Ethereum applications",
        "categories": [
          {
            "id": "blockchain",
            "name": "blockchain"
          },
          {
            "id": "web3",
            "name": "web3"
          },
          {
            "id": "ethereum",
            "name": "ethereum"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//tapformio.png",
        "tool_count": 7
      }
    },
    {
      "id": "foursquare",
      "key": "foursquare",
      "name": "Foursquare",
      "description": "Search for places and place recommendations from the Foursquare Places database",
      "category": "other / miscellaneous",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/foursquare.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 767,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Search for places and place recommendations from the Foursquare Places database",
        "categories": [
          {
            "id": "other-/-miscellaneous",
            "name": "other / miscellaneous"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/foursquare.png",
        "tool_count": 5
      }
    },
    {
      "id": "open_sea",
      "key": "open_sea",
      "name": "Open sea",
      "description": "OpenSea is the world's first and largest NFT marketplace for NFTs and crypto collectibles.",
      "category": "nft",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/opensea.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 152,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "OpenSea is the world's first and largest NFT marketplace for NFTs and crypto collectibles.",
        "categories": [
          {
            "id": "nft",
            "name": "nft"
          },
          {
            "id": "web3",
            "name": "web3"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/opensea.png",
        "tool_count": 24
      }
    },
    {
      "id": "humanloop",
      "key": "humanloop",
      "name": "Humanloop",
      "description": "Humanloop helps developers build and refine AI applications, offering user feedback loops, model training, and data annotation to iterate on language model performance",
      "category": "ai & machine learning",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//humanloop.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 219,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Humanloop helps developers build and refine AI applications, offering user feedback loops, model training, and data annotation to iterate on language model performance",
        "categories": [
          {
            "id": "ai-&-machine-learning",
            "name": "ai & machine learning"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//humanloop.jpeg",
        "tool_count": 4
      }
    },
    {
      "id": "zoominfo",
      "key": "zoominfo",
      "name": "Zoominfo",
      "description": "ZoomInfo is a multiplatform operating system that revenue teams use to deliver business growth.",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/agencyzoom_logo.jpeg",
      "isActive": false,
      "status": "offline",
      "usageCount": 0,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "ZoomInfo is a multiplatform operating system that revenue teams use to deliver business growth.",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/agencyzoom_logo.jpeg",
        "tool_count": 17
      }
    },
    {
      "id": "gong",
      "key": "gong",
      "name": "Gong",
      "description": "Gong is a platform for video meetings, call recording, and team collaboration.",
      "category": "collaboration",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/gong.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 310,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Gong is a platform for video meetings, call recording, and team collaboration.",
        "categories": [
          {
            "id": "collaboration",
            "name": "collaboration"
          },
          {
            "id": "communication",
            "name": "communication"
          },
          {
            "id": "scheduling",
            "name": "scheduling"
          },
          {
            "id": "project-management",
            "name": "project-management"
          },
          {
            "id": "analytics",
            "name": "analytics"
          },
          {
            "id": "marketing",
            "name": "marketing"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/gong.png",
        "tool_count": 54
      }
    },
    {
      "id": "placekey",
      "key": "placekey",
      "name": "Placekey",
      "description": "Placekey standardizes location data by assigning unique IDs to physical addresses, simplifying address matching and enabling data sharing across platforms",
      "category": "analytics & data",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//placekey.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 213,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Placekey standardizes location data by assigning unique IDs to physical addresses, simplifying address matching and enabling data sharing across platforms",
        "categories": [
          {
            "id": "analytics-&-data",
            "name": "analytics & data"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//placekey.png",
        "tool_count": 3
      }
    },
    {
      "id": "textrazor",
      "key": "textrazor",
      "name": "Textrazor",
      "description": "TextRazor is a natural language processing API that extracts meaning, entities, and relationships from text, powering advanced content analysis and sentiment detection",
      "category": "ai & machine learning",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/textrazor.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 743,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "TextRazor is a natural language processing API that extracts meaning, entities, and relationships from text, powering advanced content analysis and sentiment detection",
        "categories": [
          {
            "id": "ai-&-machine-learning",
            "name": "ai & machine learning"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/textrazor.svg",
        "tool_count": 13
      }
    },
    {
      "id": "cloudflare",
      "key": "cloudflare",
      "name": "Cloudflare",
      "description": "Cloudflare is a global network designed to make everything you connect to the Internet secure, private, fast, and reliable.",
      "category": "networking",
      "icon": "https://www.cloudflare.com/favicon.ico",
      "isActive": false,
      "status": "offline",
      "usageCount": 402,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Cloudflare is a global network designed to make everything you connect to the Internet secure, private, fast, and reliable.",
        "categories": [
          {
            "id": "networking",
            "name": "networking"
          },
          {
            "id": "security",
            "name": "security"
          },
          {
            "id": "cdn",
            "name": "cdn"
          },
          {
            "id": "dns",
            "name": "dns"
          }
        ],
        "logo": "https://www.cloudflare.com/favicon.ico",
        "tool_count": 1
      }
    },
    {
      "id": "active_campaign",
      "key": "active_campaign",
      "name": "Active campaign",
      "description": "ActiveCampaign is a marketing automation and CRM platform enabling businesses to manage email campaigns, sales pipelines, and customer segmentation to boost engagement and drive growth",
      "category": "marketing & social media",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//activecampaign.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 894,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "ActiveCampaign is a marketing automation and CRM platform enabling businesses to manage email campaigns, sales pipelines, and customer segmentation to boost engagement and drive growth",
        "categories": [
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          },
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "sales-&-customer-support",
            "name": "sales & customer support"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//activecampaign.png",
        "tool_count": 21
      }
    },
    {
      "id": "intercom",
      "key": "intercom",
      "name": "Intercom",
      "description": "A messaging platform that allows businesses to communicate with\n    prospective and existing customers within their app, on their website,\n    through social media, or via email.",
      "category": "crm",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/intercom.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 62,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "A messaging platform that allows businesses to communicate with\n    prospective and existing customers within their app, on their website,\n    through social media, or via email.",
        "categories": [
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "sales-&-customer-support",
            "name": "sales & customer support"
          },
          {
            "id": "marketing-&-social-media",
            "name": "marketing & social media"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/intercom.svg",
        "tool_count": 43
      }
    },
    {
      "id": "echtpost",
      "key": "echtpost",
      "name": "Echtpost",
      "description": "EchtPost facilitates secure digital communication, encryption, and data privacy, providing a reliable channel for sending confidential documents and messages",
      "category": "collaboration & communication",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/echtpost.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 584,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "EchtPost facilitates secure digital communication, encryption, and data privacy, providing a reliable channel for sending confidential documents and messages",
        "categories": [
          {
            "id": "collaboration-&-communication",
            "name": "collaboration & communication"
          },
          {
            "id": "security-&-compliance",
            "name": "security & compliance"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/echtpost.svg",
        "tool_count": 1
      }
    },
    {
      "id": "bigmailer",
      "key": "bigmailer",
      "name": "Bigmailer",
      "description": "BigMailer is an email marketing platform designed for managing multiple brands, offering features like white-labeling, automation, and integration with Amazon SES.",
      "category": "email marketing",
      "icon": "https://www.bigmailer.io/wp-content/uploads/2020/04/bigmailer-logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 554,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "BigMailer is an email marketing platform designed for managing multiple brands, offering features like white-labeling, automation, and integration with Amazon SES.",
        "categories": [
          {
            "id": "email-marketing",
            "name": "email marketing"
          },
          {
            "id": "marketing-automation",
            "name": "marketing automation"
          }
        ],
        "logo": "https://www.bigmailer.io/wp-content/uploads/2020/04/bigmailer-logo.png",
        "tool_count": 3
      }
    },
    {
      "id": "brilliant_directories",
      "key": "brilliant_directories",
      "name": "Brilliant directories",
      "description": "Brilliant Directories is an all-in-one platform that enables users to create and manage online membership communities and business directories.",
      "category": "website builders",
      "icon": "https://www.brilliantdirectories.com/wp-content/uploads/2019/06/brilliant-directories-logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 186,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Brilliant Directories is an all-in-one platform that enables users to create and manage online membership communities and business directories.",
        "categories": [
          {
            "id": "website-builders",
            "name": "website builders"
          },
          {
            "id": "membership-management",
            "name": "membership management"
          },
          {
            "id": "business-directories",
            "name": "business directories"
          }
        ],
        "logo": "https://www.brilliantdirectories.com/wp-content/uploads/2019/06/brilliant-directories-logo.png",
        "tool_count": 6
      }
    },
    {
      "id": "browserless",
      "key": "browserless",
      "name": "Browserless",
      "description": "Browserless is a service that provides headless browser automation, allowing users to run automations on their own sites with browser infrastructure.",
      "category": "browser automation",
      "icon": "https://browserless.io/logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 836,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Browserless is a service that provides headless browser automation, allowing users to run automations on their own sites with browser infrastructure.",
        "categories": [
          {
            "id": "browser-automation",
            "name": "browser automation"
          },
          {
            "id": "web-scraping",
            "name": "web scraping"
          },
          {
            "id": "headless-browsing",
            "name": "headless browsing"
          }
        ],
        "logo": "https://browserless.io/logo.png",
        "tool_count": 7
      }
    },
    {
      "id": "bugbug",
      "key": "bugbug",
      "name": "Bugbug",
      "description": "Bugbug is a platform for testing and monitoring your code.",
      "category": "testing",
      "icon": "https://bugbug.io/favicon.ico",
      "isActive": false,
      "status": "offline",
      "usageCount": 228,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Bugbug is a platform for testing and monitoring your code.",
        "categories": [
          {
            "id": "testing",
            "name": "testing"
          },
          {
            "id": "monitoring",
            "name": "monitoring"
          }
        ],
        "logo": "https://bugbug.io/favicon.ico",
        "tool_count": 4
      }
    },
    {
      "id": "clockify",
      "key": "clockify",
      "name": "Clockify",
      "description": "Clockify is a free time tracking software that allows individuals and teams to track work hours across projects.",
      "category": "time tracking",
      "icon": "https://clockify.me/assets/images/clockify-logo.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 482,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Clockify is a free time tracking software that allows individuals and teams to track work hours across projects.",
        "categories": [
          {
            "id": "time-tracking",
            "name": "time tracking"
          },
          {
            "id": "project-management",
            "name": "project management"
          },
          {
            "id": "productivity",
            "name": "productivity"
          }
        ],
        "logo": "https://clockify.me/assets/images/clockify-logo.svg",
        "tool_count": 14
      }
    },
    {
      "id": "cutt_ly",
      "key": "cutt_ly",
      "name": "Cutt ly",
      "description": "Cutt.ly is a URL shortening service that allows users to shorten, manage, and analyze URLs.",
      "category": "url shortening",
      "icon": "https://cutt.ly/favicon.ico",
      "isActive": false,
      "status": "offline",
      "usageCount": 533,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Cutt.ly is a URL shortening service that allows users to shorten, manage, and analyze URLs.",
        "categories": [
          {
            "id": "url-shortening",
            "name": "url shortening"
          },
          {
            "id": "link-management",
            "name": "link management"
          },
          {
            "id": "analytics",
            "name": "analytics"
          }
        ],
        "logo": "https://cutt.ly/favicon.ico",
        "tool_count": 1
      }
    },
    {
      "id": "emailoctopus",
      "key": "emailoctopus",
      "name": "Emailoctopus",
      "description": "EmailOctopus is an email marketing platform founded in 2015, offering affordable and intuitive solutions for individuals and businesses to connect with their subscribers.",
      "category": "email marketing",
      "icon": "https://emailoctopus.com/logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 733,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "EmailOctopus is an email marketing platform founded in 2015, offering affordable and intuitive solutions for individuals and businesses to connect with their subscribers.",
        "categories": [
          {
            "id": "email-marketing",
            "name": "email marketing"
          },
          {
            "id": "marketing-automation",
            "name": "marketing automation"
          }
        ],
        "logo": "https://emailoctopus.com/logo.png",
        "tool_count": 7
      }
    },
    {
      "id": "enigma",
      "key": "enigma",
      "name": "Enigma",
      "description": "Enigma provides comprehensive data on U.S. businesses, offering insights into their identity and financial health to support sales, marketing, risk assessment, and compliance processes.",
      "category": "data services",
      "icon": "https://www.enigma.com/favicon.ico",
      "isActive": false,
      "status": "offline",
      "usageCount": 226,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Enigma provides comprehensive data on U.S. businesses, offering insights into their identity and financial health to support sales, marketing, risk assessment, and compliance processes.",
        "categories": [
          {
            "id": "data-services",
            "name": "data services"
          },
          {
            "id": "business-intelligence",
            "name": "business intelligence"
          },
          {
            "id": "risk-management",
            "name": "risk management"
          }
        ],
        "logo": "https://www.enigma.com/favicon.ico",
        "tool_count": 2
      }
    },
    {
      "id": "excel",
      "key": "excel",
      "name": "Excel",
      "description": "Connect to Excel to create and manage spreadsheets.",
      "category": "data & analytics",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Excel.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 502,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Connect to Excel to create and manage spreadsheets.",
        "categories": [
          {
            "id": "data-&-analytics",
            "name": "data & analytics"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Excel.png",
        "tool_count": 25
      }
    },
    {
      "id": "leadfeeder",
      "key": "leadfeeder",
      "name": "Leadfeeder",
      "description": "Leadfeeder identifies companies visiting your website and converts them into high-value leads.",
      "category": "lead generation",
      "icon": "https://www.leadfeeder.com/wp-content/uploads/2020/06/leadfeeder-logo.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 377,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Leadfeeder identifies companies visiting your website and converts them into high-value leads.",
        "categories": [
          {
            "id": "lead-generation",
            "name": "lead generation"
          },
          {
            "id": "website-visitor-tracking",
            "name": "website visitor tracking"
          },
          {
            "id": "sales-prospecting",
            "name": "sales prospecting"
          }
        ],
        "logo": "https://www.leadfeeder.com/wp-content/uploads/2020/06/leadfeeder-logo.svg",
        "tool_count": 1
      }
    },
    {
      "id": "leadoku",
      "key": "leadoku",
      "name": "Leadoku",
      "description": "Leadoku is a platform designed to streamline lead management and sales processes.",
      "category": "sales",
      "icon": "https://leadoku.com/logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 674,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Leadoku is a platform designed to streamline lead management and sales processes.",
        "categories": [
          {
            "id": "sales",
            "name": "sales"
          },
          {
            "id": "crm",
            "name": "crm"
          },
          {
            "id": "lead-management",
            "name": "lead management"
          }
        ],
        "logo": "https://leadoku.com/logo.png",
        "tool_count": 1
      }
    },
    {
      "id": "lodgify",
      "key": "lodgify",
      "name": "Lodgify",
      "description": "Lodgify is an all-in-one vacation rental software that enables property owners and managers to create bookable websites, synchronize property data across multiple channels, and manage guest reservations and communications from a single platform.",
      "category": "vacation rental software",
      "icon": "https://www.lodgify.com/wp-content/uploads/2023/04/lodgify-logo.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 415,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Lodgify is an all-in-one vacation rental software that enables property owners and managers to create bookable websites, synchronize property data across multiple channels, and manage guest reservations and communications from a single platform.",
        "categories": [
          {
            "id": "vacation-rental-software",
            "name": "vacation rental software"
          },
          {
            "id": "property-management-software",
            "name": "property management software"
          },
          {
            "id": "channel-management",
            "name": "channel management"
          }
        ],
        "logo": "https://www.lodgify.com/wp-content/uploads/2023/04/lodgify-logo.svg",
        "tool_count": 1
      }
    },
    {
      "id": "nextdns",
      "key": "nextdns",
      "name": "Nextdns",
      "description": "NextDNS is a DNS service that enhances internet security and privacy by blocking malicious websites, tracking scripts, and ads before they reach your device.",
      "category": "internet security",
      "icon": "https://nextdns.io/logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 506,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "NextDNS is a DNS service that enhances internet security and privacy by blocking malicious websites, tracking scripts, and ads before they reach your device.",
        "categories": [
          {
            "id": "internet-security",
            "name": "internet security"
          },
          {
            "id": "privacy",
            "name": "privacy"
          },
          {
            "id": "dns-services",
            "name": "dns services"
          }
        ],
        "logo": "https://nextdns.io/logo.png",
        "tool_count": 2
      }
    },
    {
      "id": "quickbooks",
      "key": "quickbooks",
      "name": "Quickbooks",
      "description": "Quickbooks is a cloud-based accounting software that helps you manage your finances, track your income and expenses, and get insights into your business",
      "category": "finance & accounting",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/quickbooks.jpg",
      "isActive": false,
      "status": "offline",
      "usageCount": 977,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Quickbooks is a cloud-based accounting software that helps you manage your finances, track your income and expenses, and get insights into your business",
        "categories": [
          {
            "id": "finance-&-accounting",
            "name": "finance & accounting"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/quickbooks.jpg",
        "tool_count": 13
      }
    },
    {
      "id": "ragic",
      "key": "ragic",
      "name": "Ragic",
      "description": "Ragic is a web-based database builder that allows users to create and manage databases as easily as creating a spreadsheet.",
      "category": "database management",
      "icon": "https://www.ragic.com/images/logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 342,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Ragic is a web-based database builder that allows users to create and manage databases as easily as creating a spreadsheet.",
        "categories": [
          {
            "id": "database-management",
            "name": "database management"
          },
          {
            "id": "no-code-development",
            "name": "no-code development"
          },
          {
            "id": "business-productivity",
            "name": "business productivity"
          }
        ],
        "logo": "https://www.ragic.com/images/logo.png",
        "tool_count": 1
      }
    },
    {
      "id": "ramp",
      "key": "ramp",
      "name": "Ramp",
      "description": "Ramp is a comprehensive finance platform designed to help you manage\n    your finances, track your income and expenses, and get insights into\n    your business. The Ramp API provides developers with the tools to\n    interact with the platform programmatically.",
      "category": "finance & accounting",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/ramp.svg",
      "isActive": false,
      "status": "offline",
      "usageCount": 965,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Ramp is a comprehensive finance platform designed to help you manage\n    your finances, track your income and expenses, and get insights into\n    your business. The Ramp API provides developers with the tools to\n    interact with the platform programmatically.",
        "categories": [
          {
            "id": "finance-&-accounting",
            "name": "finance & accounting"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/ramp.svg",
        "tool_count": 8
      }
    },
    {
      "id": "resend",
      "key": "resend",
      "name": "Resend",
      "description": "Connect to Resend to send emails.",
      "category": "email",
      "icon": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/resend.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 926,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Connect to Resend to send emails.",
        "categories": [
          {
            "id": "email",
            "name": "email"
          }
        ],
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/resend.png",
        "tool_count": 18
      }
    },
    {
      "id": "rootly",
      "key": "rootly",
      "name": "Rootly",
      "description": "Rootly is an AI-native incident management platform that automates workflows and collaboration, integrating with Slack, PagerDuty, and other tools to streamline incident response.",
      "category": "incident management",
      "icon": "https://rootly.com/favicon.ico",
      "isActive": false,
      "status": "offline",
      "usageCount": 858,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Rootly is an AI-native incident management platform that automates workflows and collaboration, integrating with Slack, PagerDuty, and other tools to streamline incident response.",
        "categories": [
          {
            "id": "incident-management",
            "name": "incident management"
          },
          {
            "id": "devops",
            "name": "devops"
          },
          {
            "id": "it-operations",
            "name": "it operations"
          },
          {
            "id": "automation",
            "name": "automation"
          },
          {
            "id": "collaboration",
            "name": "collaboration"
          }
        ],
        "logo": "https://rootly.com/favicon.ico",
        "tool_count": 3
      }
    },
    {
      "id": "rosette_text_analytics",
      "key": "rosette_text_analytics",
      "name": "Rosette text analytics",
      "description": "Rosette Text Analytics is a platform that uses natural language processing, statistical modeling, and machine learning to analyze unstructured and semi-structured text across 364 language-encoding-script combinations, revealing valuable information and actionable data.",
      "category": "natural language processing",
      "icon": "https://developer.rosette.com/images/rosette-logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 175,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Rosette Text Analytics is a platform that uses natural language processing, statistical modeling, and machine learning to analyze unstructured and semi-structured text across 364 language-encoding-script combinations, revealing valuable information and actionable data.",
        "categories": [
          {
            "id": "natural-language-processing",
            "name": "natural language processing"
          },
          {
            "id": "text-analytics",
            "name": "text analytics"
          },
          {
            "id": "machine-learning",
            "name": "machine learning"
          }
        ],
        "logo": "https://developer.rosette.com/images/rosette-logo.png",
        "tool_count": 3
      }
    },
    {
      "id": "scrape_do",
      "key": "scrape_do",
      "name": "Scrape do",
      "description": "Scrape.do is a web scraping API offering rotating residential, data-center, and mobile proxies with headless browser support and session management to bypass anti-bot protections (e.g., Cloudflare, Akamai) and extract data at scale in formats like JSON and HTML.",
      "category": "web scraping",
      "icon": "https://scrape.do/favicon.ico",
      "isActive": false,
      "status": "offline",
      "usageCount": 205,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Scrape.do is a web scraping API offering rotating residential, data-center, and mobile proxies with headless browser support and session management to bypass anti-bot protections (e.g., Cloudflare, Akamai) and extract data at scale in formats like JSON and HTML.",
        "categories": [
          {
            "id": "web-scraping",
            "name": "web scraping"
          },
          {
            "id": "data-extraction",
            "name": "data extraction"
          }
        ],
        "logo": "https://scrape.do/favicon.ico",
        "tool_count": 19
      }
    },
    {
      "id": "scrapingant",
      "key": "scrapingant",
      "name": "Scrapingant",
      "description": "ScrapingAnt is a web scraping API that provides tools for data extraction, including features like Chrome page rendering, low latency rotating proxies, JavaScript execution, and unlimited parallel requests.",
      "category": "web scraping",
      "icon": "https://scrapingant.com/favicon.ico",
      "isActive": false,
      "status": "offline",
      "usageCount": 768,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "ScrapingAnt is a web scraping API that provides tools for data extraction, including features like Chrome page rendering, low latency rotating proxies, JavaScript execution, and unlimited parallel requests.",
        "categories": [
          {
            "id": "web-scraping",
            "name": "web scraping"
          },
          {
            "id": "data-extraction",
            "name": "data extraction"
          },
          {
            "id": "api-services",
            "name": "api services"
          }
        ],
        "logo": "https://scrapingant.com/favicon.ico",
        "tool_count": 5
      }
    },
    {
      "id": "starton",
      "key": "starton",
      "name": "Starton",
      "description": "Starton is an all-in-one Web3 API platform that enables developers to deploy and interact with smart contracts, store files on IPFS, and monitor blockchain events through a unified API and frontend interface.",
      "category": "web3 development",
      "icon": "https://www.starton.com/logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 866,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "Starton is an all-in-one Web3 API platform that enables developers to deploy and interact with smart contracts, store files on IPFS, and monitor blockchain events through a unified API and frontend interface.",
        "categories": [
          {
            "id": "web3-development",
            "name": "web3 development"
          },
          {
            "id": "blockchain-api",
            "name": "blockchain api"
          },
          {
            "id": "smart-contract-management",
            "name": "smart contract management"
          }
        ],
        "logo": "https://www.starton.com/logo.png",
        "tool_count": 2
      }
    },
    {
      "id": "tpscheck",
      "key": "tpscheck",
      "name": "Tpscheck",
      "description": "TPSCheck is a service that verifies in real-time if a phone number is registered with the UK's Telephone Preference Service (TPS) or Corporate Telephone Preference Service (CTPS), providing insights on validity, location, type, and provider of the number.",
      "category": "compliance",
      "icon": "https://www.tpscheck.uk/logo.png",
      "isActive": false,
      "status": "offline",
      "usageCount": 664,
      "integrations": [],
      "platform": [
        "web",
        "cursor",
        "claude",
        "windsurf"
      ],
      "popular": false,
      "popularityMetric": 0,
      "enabled": true,
      "meta": {
        "description": "TPSCheck is a service that verifies in real-time if a phone number is registered with the UK's Telephone Preference Service (TPS) or Corporate Telephone Preference Service (CTPS), providing insights on validity, location, type, and provider of the number.",
        "categories": [
          {
            "id": "compliance",
            "name": "compliance"
          },
          {
            "id": "telecommunications",
            "name": "telecommunications"
          },
          {
            "id": "marketing-automation",
            "name": "marketing automation"
          }
        ],
        "logo": "https://www.tpscheck.uk/logo.png",
        "tool_count": 1
      }
    }
  ],
  "appDetails": {
    "gmail": {
      "name": "Gmail",
      "slug": "gmail",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "gmail_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://www.googleapis.com/auth/gmail.modify,https://www.googleapis.com/auth/userinfo.profile,https://www.googleapis.com/auth/userinfo.email,https://www.googleapis.com/auth/contacts.readonly,https://www.googleapis.com/auth/profile.language.read,https://www.googleapis.com/auth/user.addresses.read,https://www.googleapis.com/auth/user.birthday.read,https://www.googleapis.com/auth/user.emails.read,https://www.googleapis.com/auth/user.phonenumbers.read,https://www.googleapis.com/auth/profile.emails.read",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.googleapis.com"
          }
        },
        {
          "name": "gmail_bearer",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "description": "Token for bearer token auth",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.googleapis.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Connect to Gmail to send and manage emails.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/gmail.svg",
        "app_url": "https://mail.google.com",
        "categories": [
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          }
        ],
        "triggers_count": 1,
        "tools_count": 21
      },
      "deprecated": {
        "toolkitId": "a90e7d79-4f7a-4ff2-bd7d-19c78640b8f8"
      },
      "actions": [
        {
          "name": "delete_draft",
          "description": "Permanently deletes a specific gmail draft using its id; ensure the draft exists and the user has necessary permissions for the given `user id`."
        },
        {
          "name": "delete_message",
          "description": "Permanently deletes a specific email message by its id from a gmail mailbox; for `user id`, use 'me' for the authenticated user or an email address to which the authenticated user has delegated access."
        },
        {
          "name": "fetch_emails",
          "description": "Fetches a list of email messages from a gmail account, supporting filtering, pagination, and optional full content retrieval."
        },
        {
          "name": "get_contacts",
          "description": "Fetches contacts (connections) for the authenticated google account, allowing selection of specific data fields and pagination."
        },
        {
          "name": "list_drafts",
          "description": "Retrieves a paginated list of email drafts from a user's gmail account."
        },
        {
          "name": "move_to_trash",
          "description": "Moves an existing, non-deleted email message to the trash for the specified user."
        },
        {
          "name": "reply_to_thread",
          "description": "Sends a reply within a specific gmail thread using the original thread's subject, requiring a valid `thread id` and correctly formatted email addresses."
        },
        {
          "name": "search_people",
          "description": "Searches contacts by matching the query against names, nicknames, emails, phone numbers, and organizations, optionally including 'other contacts'."
        },
        {
          "name": "send_email",
          "description": "Sends an email via gmail api using the authenticated user's google profile display name, requiring `is html=true` if the body contains html and valid `s3key`, `mimetype`, `name` for any attachment."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/gmail/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"gmail\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GMAIL])",
      "metadata": {
        "totalDownloads": "7494",
        "activeUsers": "3602",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "gmail"
    },
    "composio": {
      "name": "Composio",
      "slug": "composio",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "Composio",
          "mode": "NO_AUTH",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-14T08:48:17.389Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Composio enables AI Agents and LLMs to authenticate and integrate with various tools via function calling.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//composio-logo.png",
        "app_url": "https://composio.dev",
        "categories": [
          {
            "name": "AI & Machine Learning",
            "slug": "ai-&-machine-learning"
          }
        ],
        "triggers_count": 0,
        "tools_count": 12
      },
      "deprecated": {
        "toolkitId": "784908aa-9ff2-4d6b-995c-fc63787e2dbd"
      },
      "actions": [
        {
          "name": "advanced_use_case_search",
          "description": "Apps are like github, linear, gmail, etc. actions are like send email, create issue, etc programmatic functions that can be used to perform the action. not all apps support all actions. some apps support only a subset of actions that might be possible to perform with that app. use this action to search for apps that can be used to perform a specific use case. this list is only probabilistic. search apps for a specified usecase. so for example, if use case is to \"send an email\" this action will return all the apps that can be used to send email. similarly if use case is to \"create a github issue\" this action will return all the apps that can be used to create a github issue. after using this, to confirm whether the application can indeed potentially support the use case, use the action retrieve actions."
        },
        {
          "name": "check_active_connection",
          "description": "Check if any active connections exist for a given tool or status of the connection with a specific id. if an active connection exists, the tool will return true, otherwise it will return false. active connections allow an agent to perform any actions on top of the tool."
        },
        {
          "name": "enable_trigger",
          "description": "Enable a specific trigger for the authenticated user."
        },
        {
          "name": "execute_action",
          "description": "Execute an action using the composio api."
        },
        {
          "name": "get_required_parameters",
          "description": "This action retrieves the necessary parameters required to initiate a connection with a specified tool. for instance, linear may need an 'api key', zendesk might require a 'subdomain', and slack could need a 'webhook url'. the required parameters vary based on the authentication scheme employed. for example, api key authentication requires an api key, whereas oauth2 typically does not require any parameters because it involves redirecting the user to the tool's website for authorization."
        },
        {
          "name": "get_response_schema",
          "description": "Retrieves the response schema for a specified composio action. this action fetches the complete response schema definition for any valid composio action, returning it as a dictionary that describes the expected response structure."
        },
        {
          "name": "initiate_connection",
          "description": "Initiate a connection to a tool with the given parameters. for example, linear might require an api key to create a connection, which we can get by calling get required parameters. to create a new connection, we need to call create connection with the required parameters. similarly, zendesk might require a subdomain to create a connection, which we can get by calling get required parameters. to create a new connection, we need to call create connection with the subdomain."
        },
        {
          "name": "list_apps",
          "description": "List all the available apps on composio with filtering options."
        },
        {
          "name": "list_triggers",
          "description": "List available triggers and their configuration schemas."
        },
        {
          "name": "retrieve_actions",
          "description": "Apps are like github, linear, gmail, etc. actions are like send email, create issue, etc programmatic functions that can be used to perform the action. get actions for a given usecase using similarity search. this actions are most relevant to the usecase but still might not be actual actions needed for the usecase. this decision should be made by you. this should be used to narrow down for an app, and find the most relevant actions for the usecase. in some cases, you might want to even check if the usecase is supported by the app or not."
        },
        {
          "name": "retrieve_apps",
          "description": "Apps are like github, linear, gmail, etc. actions are like send email, create issue, etc programmatic functions that can be used to perform the action. not all apps support all actions. some apps support only a subset of actions that might be possible to perform with that app. use this action to retrieve the apps that can be used to perform the action. this list is only probabilistic. retrieve apps for a specified usecase. so for example, if use case is to \"send an email\" this action will return all the apps that can be used to send email. simiarly if use case is to \"create a github issue\" this action will return all the apps that can be used to create a github issue. after using this, to confirm whether the application can indeed potentially support the use case, use the action retrieve actions."
        },
        {
          "name": "wait_for_connection",
          "description": "Wait for a connection to be established for a given tool or check the status of a connection with a specific id. wait for a given amount of time and then check again the status of the connection."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/composio/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"composio\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.COMPOSIO])",
      "metadata": {
        "totalDownloads": "665",
        "activeUsers": "164",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "composio"
    },
    "github": {
      "name": "GitHub",
      "slug": "github",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "github_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "public_repo,user",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.github.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "GitHub API Tool",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/github.png",
        "app_url": "https://github.com/",
        "categories": [
          {
            "name": "Developer Tools & DevOps",
            "slug": "developer-tools-&-devops"
          }
        ],
        "triggers_count": 6,
        "tools_count": 910
      },
      "deprecated": {
        "toolkitId": "01e22f33-dc3f-46ae-b58d-050e4d2d1909"
      },
      "actions": [
        {
          "name": "create_an_issue",
          "description": "Creates a new issue in a github repository, requiring the repository to exist and have issues enabled; specific fields like assignees, milestone, or labels may require push access."
        },
        {
          "name": "create_a_pull_request",
          "description": "Creates a pull request in a github repository, requiring existing `base` and `head` branches; `title` or `issue` must be provided."
        },
        {
          "name": "get_a_pull_request",
          "description": "Retrieves a specific pull request from a github repository using its owner, repository name, and pull request number."
        },
        {
          "name": "list_branches",
          "description": "Lists branches for an existing github repository, with an option to filter by protection status."
        },
        {
          "name": "list_commits",
          "description": "Retrieves commits for a repository, optionally filtering by sha (must be valid commit sha or existing branch), path, author, committer, or date range."
        },
        {
          "name": "list_pull_requests",
          "description": "Lists pull requests for a specified github repository."
        },
        {
          "name": "list_repository_issues",
          "description": "Lists issues (which include pull requests) for a specified, existing github repository, with options for filtering, sorting, and pagination."
        },
        {
          "name": "star_a_repository_for_the_authenticated_user",
          "description": "Stars an existing and accessible repository for the authenticated user; this action is idempotent and succeeds even if the repository is already starred."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/github/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"github\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GITHUB])",
      "metadata": {
        "totalDownloads": "2632",
        "activeUsers": "1052",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "github"
    },
    "googlecalendar": {
      "name": "Googlecalendar",
      "slug": "googlecalendar",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "googlecalendar_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://www.googleapis.com/auth/calendar https://www.googleapis.com/auth/calendar.events",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.googleapis.com/calendar/v3"
          }
        },
        {
          "name": "googlecalendar_bearer",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "description": "Token for bearer token auth",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.googleapis.com/calendar/v3"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-10T15:48:44.899Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Google Calendar is a time management tool providing scheduling features, event reminders, and integration with email and other apps for streamlined organization",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-calendar.svg",
        "app_url": "https://calendar.google.com",
        "categories": [
          {
            "name": "Scheduling & Booking",
            "slug": "scheduling-&-booking"
          }
        ],
        "triggers_count": 1,
        "tools_count": 14
      },
      "deprecated": {
        "toolkitId": "3dac6ad0-5ab3-4cb0-9c10-34dc08e89b46"
      },
      "actions": [
        {
          "name": "patch_event",
          "description": "Updates specified fields of an existing event in a google calendar using patch semantics (array fields like `attendees` are fully replaced if provided); ensure the `calendar id` and `event id` are valid and the user has write access to the calendar."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/googlecalendar/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"googlecalendar\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GOOGLECALENDAR])",
      "metadata": {
        "totalDownloads": "1371",
        "activeUsers": "494",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "googlecalendar"
    },
    "notion": {
      "name": "Notion",
      "slug": "notion",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "notion_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.notion.com"
          }
        },
        {
          "name": "notion_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your notion API key for authentication. Obtain it from your notion settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.notion.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Notion centralizes notes, docs, wikis, and tasks in a unified workspace, letting teams build custom workflows for collaboration and knowledge management",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/notion.svg",
        "app_url": "https://www.notion.so",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 3,
        "tools_count": 24
      },
      "deprecated": {
        "toolkitId": "dbfb6202-e358-4271-8a80-a8b6d53a717b"
      },
      "actions": [
        {
          "name": "add_page_content",
          "description": "Appends a single new content block to a specified notion page or block. to add multiple blocks, this action must be invoked multiple times. preconditions: - the `parent block id` must identify an existing notion page or one of the following block types that can contain child blocks: page, toggle, to-do, bulleted list, numbered list, callout, or quote. - the `content block` provided in the request must represent a valid notion block object structure. for details on block types and their structures, refer to the official notion api documentation. the new block can be appended at the end of the parent's content or positioned after a specific existing block if the `after` parameter is provided."
        },
        {
          "name": "create_comment",
          "description": "Creates a new comment on a notion page or within an existing discussion thread. comments can be added in two primary ways: 1. as a new top-level comment directly on a page by specifying its `parent page id`. 2. as a reply to an existing discussion by specifying its `discussion id`. preconditions: - provide either `parent page id` (to comment on a page) or `discussion id` (to reply in a thread), but not both. - the `comment` parameter must be a notionrichtext object. a simple text comment would typically be structured as: `{\"type\": \"text\", \"text\": {\"content\": \"your comment text\"}}`. - the api does not support creating new discussion threads on specific blocks (inline comments) via this action; only page-level comments or replies to existing discussions are possible."
        },
        {
          "name": "create_database",
          "description": "Creates a new database as a subpage under a specified parent page in notion, with a defined properties schema (columns). preconditions: - the `parent id` must be a valid uuid of an existing page in the notion workspace. - the `properties` list must define a valid schema. it's highly recommended to include at least one property of type 'title'. note: this action is exclusively for creating new databases. to modify the schema of an existing database (e.g., add, remove, or update columns/properties), please use the `update schema database` action. the provided database title will be automatically converted to notion's rich text format."
        },
        {
          "name": "create_notion_page",
          "description": "Creates a new page in a notion workspace. this action allows you to create a new page with a specified title, optional icon, and optional cover image. the new page will be created under a designated parent page or database, identified by its uuid. preconditions: - the `parent id` must be a valid uuid of an existing page or database in the notion workspace. - if `icon` is provided, it must be a single emoji character. - if `cover` is provided, it must be a valid and publicly accessible image url. example request: { \"parent id\": \"59833787-2cf9-4fdf-8782-e53db20768a5\", \"title\": \"my new project proposal\", \"icon\": \"🚀\", \"cover\": \"https://www.example.com/images/project cover.png\" }"
        },
        {
          "name": "delete_block",
          "description": "Archives a specified block, page, or database in notion by its id. this action sets the 'archived' property of the target object to true. in the notion ui, this is equivalent to moving the item to the \"trash\". the archived item can be restored later via the api using actions such as 'update a block' or 'update page'. preconditions: - the `block id` must refer to an existing block, page, or database that the integration has permission to access. otherwise, the api will return an error (e.g., 404 not found)."
        },
        {
          "name": "fetch_comments",
          "description": "Fetches a list of unresolved comment objects associated with a specific notion block or page. this action supports pagination, allowing retrieval of comments in chunks. use the `block id` to specify the target page or block. the `start cursor` and `page size` parameters control pagination. preconditions: - the specified `block id` must correspond to an existing block or page accessible by the authenticated user."
        },
        {
          "name": "fetch_data",
          "description": "Fetches a simplified list of notion pages, databases, or both, accessible to the connected notion integration. this action retrieves items along with their unique ids, titles, and types ('page' or 'database'). it simplifies the process of getting notion resource details by abstracting the complexity of notion's native search api response. the action processes the raw search results to extract essential information: - `id`: the unique identifier of the page or database. - `title`: the title of the page (derived from its properties) or database. defaults to \"untitled page\" or \"untitled database\" if not found. - `type`: the object type, either 'page' or 'database'. preconditions: - in the request, exactly one of the following fields must be set to `true`: `get pages`, `get databases`, `get all`."
        },
        {
          "name": "fetch_database",
          "description": "Retrieves the complete metadata object for a specific notion database, identified by its `database id`. this object details the database's structure, including its title, icon, cover, properties (which define the columns, their types, and configurations), parent object, and other schema information. this action is used to understand the schema and properties of a database. it does not retrieve the actual data entries (pages or rows) stored within the database. for fetching database content, use a separate action designed for querying databases (e.g., an action like 'query database'). the response structure adheres to the notion api specification and respects any capability limits of the integration. preconditions: - the provided `database id` must be a valid identifier for an existing notion database that the integration can access."
        },
        {
          "name": "fetch_row",
          "description": "Retrieves a specific row from a notion database by its page id. in notion, each row within a database is an individual page. this action fetches the properties and metadata of such a page. preconditions: - the provided `page id` must be a valid uuid and correspond to an existing page in the notion workspace. note: this action fetches the page's properties (i.e., row data). to retrieve the actual content blocks within a page, use the \"fetch block children\" action or a similar action designed for fetching page content."
        },
        {
          "name": "get_about_me",
          "description": "Retrieves information about the bot user associated with the current notion integration token. this action returns a user object containing details such as: 1. the user id of the bot. 2. other information about the bot user, like its name and avatar url. the user id obtained can be used in other api calls that require a user identifier."
        },
        {
          "name": "get_about_user",
          "description": "Retrieves detailed information about a specific notion user, such as their name, avatar, and email, based on their unique user id. this action fetches user-specific data from notion. the response includes a dictionary with various attributes of the user. preconditions: - a valid `user id` corresponding to an existing notion user must be provided. the action will fail if the user id is missing or does not correspond to an accessible user."
        },
        {
          "name": "insert_row_database",
          "description": "Creates a new page (row) in a specified notion database, allowing programmatic entry addition with various properties, an icon, a cover image, and initial content blocks. preconditions: - `database id` must be a valid identifier of an existing notion database that the integration can access. - property names and types in the `properties` field must match the target database schema. for example, a 'status' property of type 'select' must use 'select' as its type. - for `select` and `multi select` types, provided option values (e.g., \"in progress\" for 'status') must be defined in the database's configuration. using non-existent options will result in an error. - external urls for covers or files must be publicly accessible."
        },
        {
          "name": "list_users",
          "description": "Retrieves a paginated list of users within the notion workspace. this action allows fetching users page by page. the number of users returned in a single response may be less than the requested `page size`. preconditions: - the workspace must have users. if no users exist, an empty list will be returned. note: guest users are not included in the list of users returned by this action."
        },
        {
          "name": "query_database",
          "description": "Retrieves a list of pages (rows) from a specified notion database, with options for sorting and pagination. this action queries a notion database using its id, allowing results to be sorted by one or more properties. pagination is supported via `page size` and `start cursor`, enabling efficient retrieval of large datasets. each row is a page, and each column is a property. preconditions: * a valid `database id` for an existing notion database must be provided. * if using `sorts`, the `property name` in each sort object must correspond to an existing property in the target database. property names can be found by inspecting the database structure (e.g., fetching database metadata or checking notion directly). the response includes the retrieved pages and pagination details, such as a `next cursor` if more results are available. the number of results may be fewer than the specified `page size`."
        },
        {
          "name": "update_row_database",
          "description": "Updates an existing notion database row (page), allowing you to modify its icon, cover, properties, or archive (delete) it. preconditions: `row id` must be a valid uuid of an accessible page. property names/ids in `properties` must match the database and values must use correct formats. property value formatting: each `propertyvalues.value` must follow notion api rules: - `title`, `rich text`: plain text (e.g., \"project alpha plan\") - `number`: number (e.g., 123, 45.67) - `select`: option name (e.g., \"in progress\") - `multi select`: comma-separated option names (e.g., \"tag1,tag2\") - `date`: iso 8601 date (e.g., \"2023-10-26\") - `people`: comma-separated notion user uuids - `url`: valid url (e.g., \"https://example.com\") - `files`: comma-separated public file urls - `checkbox`: \"true\" or \"false\""
        },
        {
          "name": "update_schema_database",
          "description": "Updates the schema of an existing notion database. this action allows modifications to the database's title, description, and its properties (columns). changes to properties can include adding new columns or modifying existing ones (e.g., renaming, changing type), based on the provided property schema configurations. preconditions: - the `database id` must correspond to an existing notion database accessible with the current credentials. - at least one of `title`, `description`, or `properties` must be provided to perform an update. - when providing `properties` to update existing columns, the names of these properties are case-sensitive and must exactly match the current property names in notion."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/notion/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"notion\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.NOTION])",
      "metadata": {
        "totalDownloads": "2485",
        "activeUsers": "800",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "notion"
    },
    "googlesheets": {
      "name": "Googlesheets",
      "slug": "googlesheets",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "google_sheets_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://www.googleapis.com/auth/spreadsheets",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://sheets.googleapis.com/v4"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-15T13:40:44.461Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Google Sheets is a web-based spreadsheet program that is part of the\n    Google Drive office suite.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-sheets.svg",
        "app_url": "https://sheets.google.com/",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 12
      },
      "deprecated": {
        "toolkitId": "f034804e-ac1e-49ee-8e9d-1c4fab4767f4"
      },
      "actions": [
        {
          "name": "batch_get",
          "description": "Retrieves data from specified cell ranges in a google spreadsheet; ensure the spreadsheet has at least one worksheet and any explicitly referenced sheet names in ranges exist."
        },
        {
          "name": "batch_update",
          "description": "Updates a specified range in a google sheet with given values, or appends them as new rows if `first cell location` is omitted; ensure the target sheet exists and the spreadsheet contains at least one worksheet."
        },
        {
          "name": "clear_values",
          "description": "Clears cell content (preserving formatting and notes) from a specified a1 notation range in a google spreadsheet; the range must correspond to an existing sheet and cells."
        },
        {
          "name": "create_google_sheet1",
          "description": "Creates a new google spreadsheet in google drive using the provided title."
        },
        {
          "name": "create_spreadsheet_column",
          "description": "Creates a new column in a google spreadsheet, requiring a valid `spreadsheet id` and an existing `sheet id`; an out-of-bounds `insert index` may append/prepend the column."
        },
        {
          "name": "create_spreadsheet_row",
          "description": "Inserts a new, empty row into a specified sheet of a google spreadsheet at a given index, optionally inheriting formatting from the row above."
        },
        {
          "name": "find_worksheet_by_title",
          "description": "Finds a worksheet by its exact, case-sensitive title within a google spreadsheet; returns a boolean indicating if found and the complete metadata of the entire spreadsheet, regardless of whether the target worksheet is found."
        },
        {
          "name": "format_cell",
          "description": "Applies text and background cell formatting to a specified range in a google sheets worksheet."
        },
        {
          "name": "get_sheet_names",
          "description": "Lists all worksheet names from a specified google spreadsheet (which must exist), useful for discovering sheets before further operations."
        },
        {
          "name": "get_spreadsheet_info",
          "description": "Retrieves comprehensive metadata for a google spreadsheet using its id, excluding cell data."
        },
        {
          "name": "lookup_spreadsheet_row",
          "description": "Finds the first row in a google spreadsheet where a cell's entire content exactly matches the query string, searching within a specified a1 notation range or the first sheet by default."
        },
        {
          "name": "sheet_from_json",
          "description": "Creates a new google spreadsheet and populates its first worksheet from `sheet json`, which must be non-empty as its first item's keys establish the headers."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/googlesheets/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"googlesheets\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GOOGLESHEETS])",
      "metadata": {
        "totalDownloads": "2307",
        "activeUsers": "729",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "googlesheets"
    },
    "slack": {
      "name": "Slack",
      "slug": "slack",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "slack_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "user_scopes",
                  "displayName": "User Scopes",
                  "type": "string",
                  "default": "channels:history,chat:write,team:read,channels:read,users:read,reminders:write,reactions:read",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "verification_token",
                  "displayName": "Verification Token",
                  "type": "string",
                  "default": null,
                  "description": "Verification token required to verify the request is coming from slack. You can find it in the slack app settings just below the client id and secret. It is required to enable Slack triggers.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://slack.com/api"
          }
        },
        {
          "name": "slack_bearer",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "verification_token",
                  "displayName": "Verification Token",
                  "type": "string",
                  "default": null,
                  "description": "Verification token required to verify the request is coming from slack. You can find it in the slack app settings just below the client id and secret. It is required to enable Slack triggers.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "description": "Token for bearer token auth",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://slack.com/api"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Slack is a channel-based messaging platform. With Slack, people can work together more effectively, connect all their software tools and services, and find the information they need to do their best work — all within a secure, enterprise-grade environment.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/slack.svg",
        "app_url": "https://slack.com/intl/en-in//",
        "categories": [
          {
            "name": "productivity",
            "slug": "productivity"
          },
          {
            "name": "popular",
            "slug": "popular"
          }
        ],
        "triggers_count": 8,
        "tools_count": 174
      },
      "deprecated": {
        "toolkitId": "933dfc28-17b1-4764-95b3-ecd134a9bb06"
      },
      "actions": [
        {
          "name": "add_reaction_to_an_item",
          "description": "Adds a specified emoji reaction to an existing message in a slack channel, identified by its timestamp; does not remove or retrieve reactions."
        },
        {
          "name": "create_a_reminder",
          "description": "Creates a slack reminder with specified text and time; time accepts unix timestamps, seconds from now, or natural language (e.g., 'in 15 minutes', 'every thursday at 2pm')."
        },
        {
          "name": "fetch_conversation_history",
          "description": "Fetches a chronological list of messages and events from a specified slack conversation, accessible by the authenticated user/bot, with options for pagination and time range filtering."
        },
        {
          "name": "list_all_slack_team_channels_with_various_filters",
          "description": "Retrieves public channels, private channels, multi-person direct messages (mpims), and direct messages (ims) from a slack workspace, with options to filter by type and exclude archived channels."
        },
        {
          "name": "list_all_slack_team_users_with_pagination",
          "description": "Retrieves a paginated list of all users, including comprehensive details, profile information, status, and team memberships, in a slack workspace; data may not be real-time."
        },
        {
          "name": "remove_reaction_from_item",
          "description": "Removes an emoji reaction from a message, file, or file comment in slack."
        },
        {
          "name": "schedules_a_message_to_a_channel_at_a_specified_time",
          "description": "Schedules a message to a slack channel, dm, or private group for a future time (`post at`), requiring `text`, `blocks`, or `attachments` for content; scheduling is limited to 120 days in advance."
        },
        {
          "name": "search_for_messages_with_query",
          "description": "Searches messages in a slack workspace using a query with optional modifiers (e.g., `in:`, `from:`, `has:`, `before:`) across accessible channels, dms, and private groups."
        },
        {
          "name": "sends_a_message_to_a_slack_channel",
          "description": "Posts a message to a slack channel, direct message, or private group; requires content via `text`, `blocks`, or `attachments`."
        },
        {
          "name": "updates_a_slack_message",
          "description": "Updates a slack message, identified by `channel` id and `ts` timestamp, by modifying its `text`, `attachments`, or `blocks`; provide at least one content field, noting `attachments`/`blocks` are replaced if included (`[]` clears them)."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/slack/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"slack\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SLACK])",
      "metadata": {
        "totalDownloads": "1021",
        "activeUsers": "3244",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "slack"
    },
    "supabase": {
      "name": "Supabase",
      "slug": "supabase",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "supabase_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "all",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.supabase.com"
          }
        },
        {
          "name": "supabase_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "supabase_personal_token",
                  "displayName": "Supabase Personal Token",
                  "type": "string",
                  "default": null,
                  "description": "Enter the personal token from your Supabase account which you can find from https://supabase.com/dashboard/account/tokens",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.supabase.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-10-07T14:28:51.799Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Supabase is an open-source backend-as-a-service providing a Postgres database, authentication, storage, and real-time subscription APIs for building modern applications",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/supabase.jpeg",
        "app_url": "https://supabase.com",
        "categories": [
          {
            "name": "Developer Tools & DevOps",
            "slug": "developer-tools-&-devops"
          }
        ],
        "triggers_count": 0,
        "tools_count": 77
      },
      "deprecated": {
        "toolkitId": "3bd3142b-7151-4e46-a667-e9cea75ba4d4"
      },
      "actions": [
        {
          "name": "create_an_organization",
          "description": "Creates a new supabase organization, which serves as a top-level container for projects, billing, and team access."
        },
        {
          "name": "create_a_project",
          "description": "Creates a new supabase project, requiring a unique name (no dots) within the organization; project creation is asynchronous."
        },
        {
          "name": "list_all_organizations",
          "description": "Lists all organizations (id and name only) associated with the supabase account, excluding project details within these organizations."
        },
        {
          "name": "list_all_projects",
          "description": "Retrieves a list of all supabase projects, including their id, name, region, and status, for the authenticated user."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/supabase/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"supabase\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SUPABASE])",
      "metadata": {
        "totalDownloads": "990",
        "activeUsers": "456",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "supabase"
    },
    "outlook": {
      "name": "Outlook",
      "slug": "outlook",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "outlook_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "Calendars.Read,Calendars.ReadWrite,Calendars.ReadWrite.Shared,Contacts.ReadWrite,Mail.Read,Mail.ReadWrite,Mail.Send,offline_access,User.Read",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://graph.microsoft.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-08T18:57:50.371Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Outlook is Microsoft’s email and calendaring platform integrating contacts, tasks, and scheduling, enabling users to manage communications and events in a unified workspace",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Outlook%20SVG%20Icon.svg",
        "app_url": "https://www.microsoft.com/en-in/microsoft-365/outlook/email-and-calendar-software-microsoft-outlook",
        "categories": [
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          }
        ],
        "triggers_count": 5,
        "tools_count": 22
      },
      "deprecated": {
        "toolkitId": "0acfe31f-55fe-4a00-bdd1-17da06819629"
      },
      "actions": [
        {
          "name": "download_outlook_attachment",
          "description": "Downloads a specific file attachment from an email message in a microsoft outlook mailbox; the attachment must contain 'contentbytes' (binary data) and not be a link or embedded item."
        },
        {
          "name": "outlook_calendar_create_event",
          "description": "Creates a new outlook calendar event, ensuring `start datetime` is chronologically before `end datetime`."
        },
        {
          "name": "outlook_create_contact",
          "description": "Creates a new contact in a microsoft outlook user's contacts folder."
        },
        {
          "name": "outlook_create_draft",
          "description": "Creates an outlook email draft with subject, body, recipients, and an optional attachment; attachments require a name, mimetype, and content."
        },
        {
          "name": "outlook_get_contact",
          "description": "Retrieves a specific outlook contact by its `contact id` from the contacts of a specified `user id` (defaults to 'me' for the authenticated user)."
        },
        {
          "name": "outlook_get_event",
          "description": "Retrieves the full details of a specific calendar event by its id from a user's outlook calendar, provided the event exists."
        },
        {
          "name": "outlook_get_profile",
          "description": "Retrieves the microsoft outlook profile for a specified user."
        },
        {
          "name": "outlook_list_events",
          "description": "Retrieves events from a user's outlook calendar via microsoft graph api, supporting pagination, filtering, property selection, sorting, and timezone specification."
        },
        {
          "name": "outlook_list_messages",
          "description": "Retrieves a list of email messages from a specified mail folder in an outlook mailbox, with options for filtering, pagination, and sorting; ensure 'user id' and 'folder' are valid, and all date/time strings are in iso 8601 format."
        },
        {
          "name": "outlook_reply_email",
          "description": "Sends a plain text reply to an outlook email message, identified by `message id`, allowing optional cc and bcc recipients."
        },
        {
          "name": "outlook_send_email",
          "description": "Sends an email with subject, body, recipients, and an optional attachment via microsoft graph api; attachments require a non-empty file with valid name and mimetype."
        },
        {
          "name": "outlook_update_email",
          "description": "Updates specified properties of an existing email message; `message id` must identify a valid message within the specified `user id`'s mailbox."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/outlook/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"outlook\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.OUTLOOK])",
      "metadata": {
        "totalDownloads": "1220",
        "activeUsers": "123",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "outlook"
    },
    "perplexityai": {
      "name": "Perplexityai",
      "slug": "perplexityai",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "pplx_scheme",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "API key for Perplexity AI",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.perplexity.ai/"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-06-08T10:53:11.814Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "The Perplexity tool interfaces with Perplexity AI's search service, offering advanced natural language processing for sophisticated searches. The PerplexityAISearch action allows for:\n\n    - Query execution with AI models tailored to various search tasks.\n    - Search customization through parameters affecting content generation.\n    - Domain filtering to enhance search precision.\n    - Real-time response streaming for dynamic applications.\n\n    This action is highly configurable for a tailored search experience, suitable for a wide range of AI-driven applications.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//perplexity.jpeg",
        "app_url": "https://perplexity.ai",
        "categories": [
          {
            "name": "AI & Machine Learning",
            "slug": "ai-&-machine-learning"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "581edd2d-f359-4182-96f9-7c754408a3d9"
      },
      "actions": [
        {
          "name": "perplexity_ai_search",
          "description": "Perplexity ai search interfaces with perplexity ai to perform search queries and return responses from a range of models. this action manages requests to perplexity ai and processes the resulting completions, which may include text, citations, and images based on selected models and settings. key features include: autoprompting to enhance and refine queries, choice of ai models for various content and performance requirements, temperature settings to manage response randomness, top k and top p filters to fine-tune response generation. beta features include citations and images in results, and response streaming for dynamic interaction. note: the parameters 'presence penalty' and 'frequency penalty' are mutually exclusive and cannot be used simultaneously."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/perplexityai/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"perplexityai\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.PERPLEXITYAI])",
      "metadata": {
        "totalDownloads": "745",
        "activeUsers": "252",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "perplexityai"
    },
    "twitter": {
      "name": "Twitter",
      "slug": "twitter",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "twitter_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "dm.write dm.read mute.read mute.write space.read tweet.write tweet.read tweet.moderate.write users.read follows.read follows.write like.read like.write list.read list.write block.read block.write bookmark.read bookmark.write offline.access",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.x.com",
                  "description": "The base URL for Twitter API requests. For more information, visit https://developer.twitter.com/en/docs/twitter-api",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Twitter, Inc. was an American social media company based in San Francisco, California, which operated and was named for named for its flagship social media network prior to its rebrand as X.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/twitter.png",
        "app_url": "https://x.com",
        "categories": [
          {
            "name": "social",
            "slug": "social"
          },
          {
            "name": "marketing",
            "slug": "marketing"
          },
          {
            "name": "popular",
            "slug": "popular"
          }
        ],
        "triggers_count": 0,
        "tools_count": 72
      },
      "deprecated": {
        "toolkitId": "b3a9602b-731b-4044-9c9a-d0137ef5c887"
      },
      "actions": [
        {
          "name": "create_list",
          "description": "Creates a new, empty list on x (formerly twitter), for which the provided name must be unique for the authenticated user; accounts are added separately."
        },
        {
          "name": "creation_of_a_post",
          "description": "Creates a tweet on twitter; `text` is required unless `card uri`, `media media ids`, `poll options`, or `quote tweet id` is provided."
        },
        {
          "name": "delete_list",
          "description": "Permanently deletes a specified twitter list using its id, which must be owned by the authenticated user; this action is irreversible and the list must already exist."
        },
        {
          "name": "follow_user",
          "description": "Allows an authenticated user (path `id`) to follow another user (`target user id`), which results in a pending request if the target user's tweets are protected."
        },
        {
          "name": "get_blocked_users",
          "description": "Retrieves user objects for accounts blocked by the specified user id; this is a read-only view of a user's block list."
        },
        {
          "name": "post_delete_by_post_id",
          "description": "Irreversibly deletes a specific tweet by its id; the tweet may persist in third-party caches after deletion."
        },
        {
          "name": "unfollow_user",
          "description": "Allows the authenticated `source user id` to unfollow an existing twitter user (`target user id`), which removes the follow relationship."
        },
        {
          "name": "user_lookup_by_username",
          "description": "Fetches public profile information for a valid and existing twitter user by their username, optionally expanding related data like pinned tweets; results may be limited for protected profiles not followed by the authenticated user."
        },
        {
          "name": "user_lookup_me",
          "description": "Returns profile information for the currently authenticated x user, customizable via request fields."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/twitter/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"twitter\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.TWITTER])",
      "metadata": {
        "totalDownloads": "87",
        "activeUsers": "49",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "twitter"
    },
    "googledrive": {
      "name": "Googledrive",
      "slug": "googledrive",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "google_drive_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://www.googleapis.com/auth/drive.file,https://www.googleapis.com/auth/userinfo.email",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.googleapis.com/drive/v3"
          }
        },
        {
          "name": "google_drive_bearer",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "description": "Token for bearer token auth",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.googleapis.com/drive/v3"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-14T08:48:17.389Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Connect to Google Drive!",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-drive.svg",
        "app_url": "https://drive.google.com",
        "categories": [
          {
            "name": "Document & File Management",
            "slug": "document-&-file-management"
          }
        ],
        "triggers_count": 1,
        "tools_count": 10
      },
      "deprecated": {
        "toolkitId": "417b9b36-3dac-4fb4-8cbd-3b77dff05235"
      },
      "actions": [
        {
          "name": "upload_file",
          "description": "Uploads a file (max 5mb) to google drive, moving it to a specified folder if a valid folder id is provided, otherwise uploads to root."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/googledrive/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"googledrive\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GOOGLEDRIVE])",
      "metadata": {
        "totalDownloads": "767",
        "activeUsers": "233",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "googledrive"
    },
    "googledocs": {
      "name": "Googledocs",
      "slug": "googledocs",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "google_docs_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://www.googleapis.com/auth/documents,https://www.googleapis.com/auth/userinfo.email",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://docs.googleapis.com/v1"
          }
        },
        {
          "name": "google_docs_bearer",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "description": "Token for bearer token auth",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://docs.googleapis.com/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-14T08:48:17.389Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Connect to Google Docs to perform various document-related actions.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-docs.svg",
        "app_url": "https://docs.google.com",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          },
          {
            "name": "Document & File Management",
            "slug": "document-&-file-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 5
      },
      "deprecated": {
        "toolkitId": "089d1192-f17e-43ba-8bcb-8128eafa5d16"
      },
      "actions": [
        {
          "name": "create_document",
          "description": "Creates a new google docs document using the provided title as filename and inserts the initial text at the beginning if non-empty, returning the document's id and metadata (excluding body content)."
        },
        {
          "name": "create_document_markdown",
          "description": "Creates a new google docs document, optionally initializing it with a title and content provided as markdown text."
        },
        {
          "name": "get_document_by_id",
          "description": "Retrieves an existing google document by its id; will error if the document is not found."
        },
        {
          "name": "update_document_markdown",
          "description": "Replaces the entire content of an existing google docs document with new markdown text; requires edit permissions for the document."
        },
        {
          "name": "update_existing_document",
          "description": "Applies programmatic edits, such as text insertion, deletion, or formatting, to a specified google doc using the `batchupdate` api method."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/googledocs/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"googledocs\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GOOGLEDOCS])",
      "metadata": {
        "totalDownloads": "633",
        "activeUsers": "231",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "googledocs"
    },
    "hubspot": {
      "name": "Hubspot",
      "slug": "hubspot",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "hubspot_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "account-info.security.read,accounting,cms.domains.read,cms.domains.write,crm.export,crm.import,crm.lists.read,crm.lists.write,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.marketing_events.read,crm.objects.marketing_events.write,crm.objects.owners.read,crm.objects.quotes.read,crm.objects.quotes.write,crm.schemas.companies.read,crm.schemas.companies.write,crm.schemas.contacts.read,crm.schemas.contacts.write,oauth,settings.users.read,settings.users.write,tickets,timeline,e-commerce,crm.objects.custom.read,crm.schemas.custom.read,content,sales-email-read",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.hubapi.com",
                  "description": "The base URL for Hubspot API requests. For more information, visit https://developers.hubspot.com/",
                  "required": false
                },
                {
                  "name": "optional_scopes",
                  "displayName": "Optional Scopes",
                  "type": "string",
                  "default": "transactional-email automation marketing.campaigns.read",
                  "description": "The optional scopes for the Hubspot API requests. Make sure the scopes are space separated.For more information, visit https://developers.hubspot.com/",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        },
        {
          "name": "hubspot_bearer",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.hubapi.com",
                  "description": "The base URL for Hubspot API requests. For more information, visit https://developers.hubspot.com/",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "description": "Token for bearer token auth",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "HubSpot is an inbound marketing, sales, and customer service platform integrating CRM, email automation, and analytics to facilitate lead nurturing and seamless customer experiences",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//hubspot.webp",
        "app_url": "https://www.hubspot.com/",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Sales & Customer Support",
            "slug": "sales-&-customer-support"
          },
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          }
        ],
        "triggers_count": 2,
        "tools_count": 229
      },
      "deprecated": {
        "toolkitId": "635cc036-aba3-48ad-a6ab-1abd84f8817b"
      },
      "actions": [
        {
          "name": "create_batch_of_ticket",
          "description": "Creates multiple hubspot tickets in a batch, each with its own properties and associations; `inputs` list must not be empty, each item needs `properties`, and associations/custom properties must be validly defined using internal names for custom fields and iso 8601 for dates."
        },
        {
          "name": "create_product_batch",
          "description": "Creates multiple products in hubspot crm in a batch, allowing unique properties and associations per product; ensure `associationcategory` and `associationtypeid` are valid, and `to  id` refers to an existing crm object id when specifying associations."
        },
        {
          "name": "create_product_object",
          "description": "Creates a new product in hubspot with specified properties and optional associations; ensure `hs sku` is unique if provided, custom properties are pre-defined in hubspot, and any association `to id` and `associationtypeid` are valid."
        },
        {
          "name": "list_products_with_paging",
          "description": "Retrieves a paginated list of products from hubspot crm, optionally including specific properties, their history, associated object ids, and filtering by archived status."
        },
        {
          "name": "update_product",
          "description": "Partially updates an existing hubspot crm product, identified by `productid` (or a custom unique `idproperty`), by modifying only specified `properties`."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/hubspot/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"hubspot\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.HUBSPOT])",
      "metadata": {
        "totalDownloads": "278",
        "activeUsers": "45",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "hubspot"
    },
    "linear": {
      "name": "Linear",
      "slug": "linear",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "linear_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "admin,read,write,issues:create,comments:create",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.linear.app",
                  "description": "The base URL for Linear API requests. For more information, visit https://developers.linear.app/docs/api",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{baseURL}}"
          }
        },
        {
          "name": "linear_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Linear API key for authentication. Obtain it from your Linear settings.",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.linear.app",
                  "description": "The base URL for Linear API requests. For more information, visit https://developers.linear.app/docs/api",
                  "required": false
                }
              ]
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Connect to Linear to create and manage issues, list projects, teams, and more",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/linear.png",
        "app_url": "https://linear.app",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 3,
        "tools_count": 18
      },
      "deprecated": {
        "toolkitId": "1614fd24-d056-465e-b5a1-714ef9e1a960"
      },
      "actions": [
        {
          "name": "remove_issue_label",
          "description": "Removes a specified label from an existing linear issue using their ids; successful even if the label isn't on the issue."
        },
        {
          "name": "update_issue",
          "description": "Updates an existing linear issue using its `issue id`; requires at least one other attribute for modification, and all provided entity ids (for state, assignee, labels, etc.) must be valid."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/linear/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"linear\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.LINEAR])",
      "metadata": {
        "totalDownloads": "1062",
        "activeUsers": "343",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "linear"
    },
    "airtable": {
      "name": "Airtable",
      "slug": "airtable",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "airtable_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "data.records:read,data.records:write,data.recordComments:read,data.recordComments:write,schema.bases:read,schema.bases:write,user.email:read",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.airtable.com/v0"
          }
        },
        {
          "name": "airtable_bearer_token",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "description": "Token for bearer token auth",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.airtable.com/v0"
          }
        },
        {
          "name": "API_KEY",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Personal Access Token",
                  "type": "string",
                  "default": null,
                  "description": "Your Personal access token for authentication. Obtain it from your Airtable settings here https://airtable.com/create/tokens",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.airtable.com/v0"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-10-16T07:35:47.886Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Airtable is a low‒code platform to build next‒gen apps. Move beyond\n    rigid tools, operationalize your critical data, and reimagine\n    workflows with AI",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/airtable.svg",
        "app_url": "https://www.airtable.com/",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          },
          {
            "name": "Workflow Automation",
            "slug": "workflow-automation"
          }
        ],
        "triggers_count": 0,
        "tools_count": 17
      },
      "deprecated": {
        "toolkitId": "71920e35-ef21-4f6d-9e5c-a69108f5b750"
      },
      "actions": [
        {
          "name": "list_bases",
          "description": "Retrieves all airtable bases accessible to the authenticated user, which may include an 'offset' for pagination."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/airtable/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"airtable\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.AIRTABLE])",
      "metadata": {
        "totalDownloads": "304",
        "activeUsers": "180",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "airtable"
    },
    "codeinterpreter": {
      "name": "Codeinterpreter",
      "slug": "codeinterpreter",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "CodeInterpreter",
          "mode": "NO_AUTH",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "CodeInterpreter extends Python-based coding environments with integrated data analysis, enabling developers to run scripts, visualize results, and prototype solutions inside supported platforms",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//code-interpreter.webp",
        "app_url": "...",
        "categories": [
          {
            "name": "Developer Tools & DevOps",
            "slug": "developer-tools-&-devops"
          },
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 5
      },
      "deprecated": {
        "toolkitId": "ab43c846-0bd6-4f34-b5f7-5f6dd25edb7b"
      },
      "actions": [
        {
          "name": "create_sandbox",
          "description": "Create a sandbox to execute python code in a jupyter notebook cell. this is useful for agents to communicate, execute code, see output, read files, write files, etc. it's like you own personal computer, but in the cloud. use /home/user folder to write/read files."
        },
        {
          "name": "execute_code",
          "description": "Execute python code in a sandbox and return any result, stdout, stderr, and error. use /home/user folder to write/read files. try to not use plt.show() as the code is executed remotely. use files for image/chart output instead."
        },
        {
          "name": "get_file_cmd",
          "description": "Get a file from the sandbox and returns the file. the files should be read from /home/user folder."
        },
        {
          "name": "run_terminal_cmd",
          "description": "Run a command in the terminal and returns the stdout, stderr, and error code. use /home/user folder to write/read files."
        },
        {
          "name": "upload_file_cmd",
          "description": "Upload a file to the sandbox environment. the files should be uploaded to the /home/user folder."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/codeinterpreter/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"codeinterpreter\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CODEINTERPRETER])",
      "metadata": {
        "totalDownloads": "505",
        "activeUsers": "66",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "codeinterpreter"
    },
    "serpapi": {
      "name": "Serpapi",
      "slug": "serpapi",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "serpapi_auth",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "apikey",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your SERP API key.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://serpapi.com/search"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "SerpApi provides a real-time API for structured search engine results, allowing developers to scrape, parse, and analyze SERP data for SEO and research",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//serpapi.png",
        "app_url": "https://serpapi.com/",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 10
      },
      "deprecated": {
        "toolkitId": "9826af81-71be-4381-9aa4-ac3d750973c4"
      },
      "actions": [
        {
          "name": "duck_duck_go_search",
          "description": "Performs a duckduckgo search via serpapi to retrieve serp data, including organic results, ads, and structured information."
        },
        {
          "name": "event_search",
          "description": "Searches for events (e.g., concerts, festivals, conferences) by query, retrieving structured data from google's event search results via the serpapi google events engine."
        },
        {
          "name": "finance_search",
          "description": "Retrieves structured financial information (e.g., company data, stock details, market trends, news) from google finance via serp api based on a query."
        },
        {
          "name": "google_maps_search",
          "description": "Performs a google maps search via serp api for a given query, optionally using specific gps coordinates and pagination, returning structured location data."
        },
        {
          "name": "image_search",
          "description": "Searches google images via serp api for a given query, returning structured image results."
        },
        {
          "name": "news_search",
          "description": "Searches google news (via serpapi, using the `tbm=nws` parameter) for articles matching a query; precise queries yield best results."
        },
        {
          "name": "scholar_search",
          "description": "Searches google scholar via serpapi for academic literature, papers, articles, and citations based on a query."
        },
        {
          "name": "search",
          "description": "Performs a real-time google search via the serp api for a non-empty query."
        },
        {
          "name": "shopping_search",
          "description": "Searches google shopping for a specific product or item to retrieve structured product listings."
        },
        {
          "name": "trends_search",
          "description": "Fetches google trends data; the `query`'s format (single/multiple terms) must comply with the selected `data type` (see its field description for details)."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/serpapi/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"serpapi\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SERPAPI])",
      "metadata": {
        "totalDownloads": "146",
        "activeUsers": "66",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "serpapi"
    },
    "jira": {
      "name": "Jira",
      "slug": "jira",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "jira_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "read:jira-work,write:jira-work,manage:jira-project,manage:jira-configuration,read:jira-user,manage:jira-webhook,manage:jira-data-provider,read:servicedesk-request,manage:servicedesk-customer,write:servicedesk-request,read:servicemanagement-insight-objects,offline_access",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.atlassian.com/ex/jira/"
          }
        },
        {
          "name": "API_KEY",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "Base64_Encode",
                  "displayName": "Base Encode",
                  "type": "string",
                  "default": null,
                  "description": "Your encoded email:api_token (Get API Token here: https://id.atlassian.com/manage-profile/security/api-tokens and encode it here: https://www.base64encode.org/)",
                  "required": true
                },
                {
                  "name": "your-domain",
                  "displayName": "Your Domain",
                  "type": "string",
                  "default": null,
                  "description": "example:- 'your-domain' for 'your-domain.atlassian.net'",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{your-domain}}.atlassian.net"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Jira API tool",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/jira.svg",
        "app_url": "https://www.atlassian.com/software/jira",
        "categories": [
          {
            "name": "productivity",
            "slug": "productivity"
          },
          {
            "name": "ticketing",
            "slug": "ticketing"
          },
          {
            "name": "popular",
            "slug": "popular"
          }
        ],
        "triggers_count": 3,
        "tools_count": 43
      },
      "deprecated": {
        "toolkitId": "2683dc3c-69fa-4d47-91a3-ebf2d9148023"
      },
      "actions": [
        {
          "name": "add_attachment",
          "description": "Uploads and attaches a file to a jira issue; ensure the issue exists and the file size complies with the jira instance's limits."
        },
        {
          "name": "add_comment",
          "description": "Adds a comment using atlassian document format (adf) for rich text to an existing jira issue."
        },
        {
          "name": "add_watcher_to_issue",
          "description": "Adds a user by `account id` to an issue's watcher list; requires 'allow users to watch issues' enabled in jira and 'manage watcher list' permission to add users other than oneself."
        },
        {
          "name": "assign_issue",
          "description": "Assigns a jira issue to a user, assigns it to the project's default assignee, or unassigns it; use when the caller has 'assign issue' permission but not broader 'edit issues' permissions for the project."
        },
        {
          "name": "bulk_create_issue",
          "description": "Creates multiple jira issues (up to 50 per call); each issue requires 'project' (id) and 'issuetype' (id) in its 'fields' object."
        },
        {
          "name": "create_issue",
          "description": "Creates a new jira issue (e.g., bug, task, story) in a specified project; `issue type` must be valid for the project, and if provided, `priority`, `components`, `versions`, and `fix versions` must reference existing ids."
        },
        {
          "name": "create_issue_link",
          "description": "Links two existing jira issues using a specified, valid link type from an inward (source) issue to an outward (destination) issue, optionally with a comment."
        },
        {
          "name": "create_project",
          "description": "Creates a new jira project, ensuring 'lead account id' is an active user's atlassian account id, 'project template key' is compatible with 'project type key' and recognized by jira, and any scheme/category/avatar ids reference existing entities."
        },
        {
          "name": "create_sprint",
          "description": "Creates a new sprint on a specified jira board; `end date` must be after `start date` if both are provided, and some jira configurations may require sprint names to be unique per board."
        },
        {
          "name": "create_version",
          "description": "Creates a new version (e.g., for releases or milestones) in a specified jira project."
        },
        {
          "name": "delete_issue",
          "description": "Deletes a jira issue by its id or key."
        },
        {
          "name": "delete_worklog",
          "description": "Deletes a specific worklog from a jira issue, with options to adjust the issue's remaining estimate and notify users."
        },
        {
          "name": "find_users",
          "description": "Searches for users in the jira instance using various criteria like email address, display name, or username. this action is particularly useful for finding a user's account id when you have their email address, which is commonly needed for assigning issues, adding watchers, or other user-related operations."
        },
        {
          "name": "get_all_statuses",
          "description": "Retrieves all available issue statuses from a jira instance, detailing each status's id, name, description, icon url, and category."
        },
        {
          "name": "get_all_users",
          "description": "Retrieves all users from the jira instance, encompassing active, inactive, and potentially other user states as per jira's configuration."
        },
        {
          "name": "get_comment",
          "description": "Retrieves a specific comment by its id from a jira issue, allowing optional expansion of comment sections like 'renderedbody'."
        },
        {
          "name": "get_current_user",
          "description": "Retrieves detailed information about the currently authenticated jira user, optionally expanding 'groups' or 'applicationroles'."
        },
        {
          "name": "get_issue_resolutions",
          "description": "Retrieves all available issue resolution types from jira; returns an empty list if none are configured."
        },
        {
          "name": "get_issue_type_scheme",
          "description": "Gets a jira issue type scheme's name, description, default settings, and all associated issue types, by its unique id; the id must point to an existing scheme."
        },
        {
          "name": "get_issue_watchers",
          "description": "Retrieves users watching a jira issue, who receive its update notifications; requires jira's 'allow users to watch issues' setting to be enabled."
        },
        {
          "name": "get_issue_worklogs",
          "description": "Retrieves worklogs for a specified jira issue that the current user has permission to view; the issue must exist."
        },
        {
          "name": "get_remote_issue_links",
          "description": "Retrieves links from a jira issue to external resources (e.g., web pages, documents, version control commits)."
        },
        {
          "name": "get_transitions",
          "description": "Retrieves available workflow transitions for a jira issue, or details for a specific transition if its id is provided; the specified issue must exist."
        },
        {
          "name": "get_worklog",
          "description": "Retrieves a list of worklogs for a specified jira issue, which must exist."
        },
        {
          "name": "jira_edit_issue",
          "description": "Updates an existing jira issue, ensuring provided field data and operations are valid per the issue's project and type settings in jira."
        },
        {
          "name": "jira_get_issue_types",
          "description": "Retrieves all jira issue types available to the user; results vary based on 'administer jira' global or 'browse projects' project permissions."
        },
        {
          "name": "list_boards",
          "description": "Retrieves a paginated list of jira agile boards, with options for filtering by type, name, or project, and for sorting."
        },
        {
          "name": "list_sprints",
          "description": "Retrieves a paginated list of sprints, ordered by most recent start date, from a jira board that must exist, optionally filtered by state."
        },
        {
          "name": "move_issue_to_sprint",
          "description": "Moves one or more jira issues to a specified active sprint."
        },
        {
          "name": "search_for_issues_using_jql_get",
          "description": "Searches for jira issues using a jql (jira query language) query, supporting pagination, field selection, and data expansion; requires a valid jql string for `jql`."
        },
        {
          "name": "search_for_issues_using_jql_post",
          "description": "Searches for jira issues using a jql query via a post request, ideal for complex or lengthy jql queries that might exceed url character limits."
        },
        {
          "name": "send_notification_for_issue",
          "description": "Sends a customized email notification for a specified jira issue, which must exist; recipients only receive the notification if they have permission to view the issue."
        },
        {
          "name": "update_comment",
          "description": "Updates the text content or visibility of an existing comment on a jira issue."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/jira/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"jira\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.JIRA])",
      "metadata": {
        "totalDownloads": "2710",
        "activeUsers": "554",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "jira"
    },
    "firecrawl": {
      "name": "Firecrawl",
      "slug": "firecrawl",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "firecrawl_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your FireCrawl API key for authentication. Obtain it from your FireCrawl settings.",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.firecrawl.dev/v1",
                  "description": "The base url for your firecrawl api",
                  "required": false
                }
              ]
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-06-08T10:53:11.814Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Firecrawl automates web crawling and data extraction, enabling organizations to gather content, index sites, and gain insights from online sources at scale",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/firecrawl.jpeg",
        "app_url": "https://www.firecrawl.dev/",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 7
      },
      "deprecated": {
        "toolkitId": "edb3e5a6-fc2b-4f1d-98be-b0e71352bce1"
      },
      "actions": [
        {
          "name": "cancel_crawl_job",
          "description": "Cancels an active or queued web crawl job using its id; attempting to cancel completed, failed, or previously canceled jobs will not change their state."
        },
        {
          "name": "crawl_job_status",
          "description": "Retrieves the current status, progress, and details of a web crawl job, using the job id obtained when the crawl was initiated."
        },
        {
          "name": "map_urls",
          "description": "Maps a website by discovering urls from a starting base url, with options to customize the crawl via search query, subdomain inclusion, sitemap handling, and result limits; search effectiveness is site-dependent."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/firecrawl/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"firecrawl\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.FIRECRAWL])",
      "metadata": {
        "totalDownloads": "481",
        "activeUsers": "258",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "firecrawl"
    },
    "tavily": {
      "name": "Tavily",
      "slug": "tavily",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "tavily_scheme",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "API key for accessing Tavily's services",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.tavily.com/"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-06-05T13:52:16.565Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Tavily provides advanced search capabilities with various options\n    including image inclusion, raw content, and domain filtering.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/tavily.svg",
        "app_url": "​https://tavily.com",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "14fe4af7-3e45-4c50-a92b-9851d7e8a8bb"
      },
      "actions": [
        {
          "name": "tavily_search",
          "description": "Use this to perform a web search via the tavily api; offers controls for search depth, content types, result count, and domain filtering."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/tavily/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"tavily\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.TAVILY])",
      "metadata": {
        "totalDownloads": "367",
        "activeUsers": "110",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "tavily"
    },
    "youtube": {
      "name": "Youtube",
      "slug": "youtube",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "OAUTH2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://www.googleapis.com/auth/youtube https://www.googleapis.com/auth/youtube.channel-memberships.creator https://www.googleapis.com/auth/youtube.force-ssl https://www.googleapis.com/auth/youtube.readonly https://www.googleapis.com/auth/youtube.upload https://www.googleapis.com/auth/youtubepartner https://www.googleapis.com/auth/youtubepartner-channel-audit",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://www.googleapis.com/youtube/v3",
                  "description": "Base URL for YouTube API requests",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Youtube actions to interact with youtube app",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/youtube.svg",
        "app_url": "https://www.youtube.com",
        "categories": [
          {
            "name": "Entertainment & Media",
            "slug": "entertainment-&-media"
          }
        ],
        "triggers_count": 4,
        "tools_count": 12
      },
      "deprecated": {
        "toolkitId": "c4acc1dd-cad1-49e3-ba39-e039f0bac0d2"
      },
      "actions": [
        {
          "name": "list_caption_track",
          "description": "Retrieves a list of caption tracks for a youtube video, returning an empty list if no captions exist or failing if the video id is invalid or not found."
        },
        {
          "name": "update_thumbnail",
          "description": "Sets the custom thumbnail for a youtube video using an image from thumbnailurl; the authenticated user must have permission to edit the video."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/youtube/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"youtube\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.YOUTUBE])",
      "metadata": {
        "totalDownloads": "656",
        "activeUsers": "150",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "youtube"
    },
    "slackbot": {
      "name": "Slackbot",
      "slug": "slackbot",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "slack_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Bot Scopes",
                  "type": "string",
                  "default": "channels:history,chat:write,chat:write,team:read,channels:read,users:read,reactions:read",
                  "description": "Scopes to request from the bot",
                  "required": false
                },
                {
                  "name": "verification_token",
                  "displayName": "Verification Token",
                  "type": "string",
                  "default": null,
                  "description": "Verification token required to verify the request is coming from slack. You can find it in the slack app settings just below the client id and secret. It is required to enable Slack triggers.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://slack.com/api"
          }
        },
        {
          "name": "slack_bearer",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "verification_token",
                  "displayName": "Verification Token",
                  "type": "string",
                  "default": null,
                  "description": "Verification token required to verify the request is coming from slack. You can find it in the slack app settings just below the client id and secret. It is required to enable Slack triggers.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "description": "Token for bearer token auth",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://slack.com/api"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Slackbot automates responses and reminders within Slack, assisting with tasks like onboarding, FAQs, and notifications to streamline team productivity",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/slack.svg",
        "app_url": "https://slack.com/intl/en-in/",
        "categories": [
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          }
        ],
        "triggers_count": 8,
        "tools_count": 174
      },
      "deprecated": {
        "toolkitId": "91368627-707a-4eb5-8ccb-9a46a36811dc"
      },
      "actions": [
        {
          "name": "add_reaction_to_an_item",
          "description": "Adds a specified emoji reaction to an existing message in a slack channel, identified by its timestamp; does not remove or retrieve reactions."
        },
        {
          "name": "create_a_reminder",
          "description": "Creates a slack reminder with specified text and time; time accepts unix timestamps, seconds from now, or natural language (e.g., 'in 15 minutes', 'every thursday at 2pm')."
        },
        {
          "name": "fetch_conversation_history",
          "description": "Fetches a chronological list of messages and events from a specified slack conversation, accessible by the authenticated user/bot, with options for pagination and time range filtering."
        },
        {
          "name": "list_all_slack_team_channels_with_various_filters",
          "description": "Retrieves public channels, private channels, multi-person direct messages (mpims), and direct messages (ims) from a slack workspace, with options to filter by type and exclude archived channels."
        },
        {
          "name": "list_all_slack_team_users_with_pagination",
          "description": "Retrieves a paginated list of all users, including comprehensive details, profile information, status, and team memberships, in a slack workspace; data may not be real-time."
        },
        {
          "name": "remove_reaction_from_item",
          "description": "Removes an emoji reaction from a message, file, or file comment in slack."
        },
        {
          "name": "schedules_a_message_to_a_channel_at_a_specified_time",
          "description": "Schedules a message to a slack channel, dm, or private group for a future time (`post at`), requiring `text`, `blocks`, or `attachments` for content; scheduling is limited to 120 days in advance."
        },
        {
          "name": "search_for_messages_with_query",
          "description": "Searches messages in a slack workspace using a query with optional modifiers (e.g., `in:`, `from:`, `has:`, `before:`) across accessible channels, dms, and private groups."
        },
        {
          "name": "sends_a_message_to_a_slack_channel",
          "description": "Posts a message to a slack channel, direct message, or private group; requires content via `text`, `blocks`, or `attachments`."
        },
        {
          "name": "updates_a_slack_message",
          "description": "Updates a slack message, identified by `channel` id and `ts` timestamp, by modifying its `text`, `attachments`, or `blocks`; provide at least one content field, noting `attachments`/`blocks` are replaced if included (`[]` clears them)."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/slackbot/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"slackbot\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SLACKBOT])",
      "metadata": {
        "totalDownloads": "217",
        "activeUsers": "30",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "slackbot"
    },
    "canvas": {
      "name": "Canvas",
      "slug": "canvas",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "OAuth2 Authorization Code",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Canvas Base URL",
                  "type": "string",
                  "default": "https://canvas.instructure.com",
                  "description": "The base URL of your Canvas instance (e.g., https://canvas.instructure.com).",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        },
        {
          "name": "canavs_apikey",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "apiKey",
                  "displayName": "Acess token",
                  "type": "string",
                  "default": null,
                  "description": "You can find your API key in your project settings.",
                  "required": true
                },
                {
                  "name": "base_url",
                  "displayName": "Canvas Base URL",
                  "type": "string",
                  "default": null,
                  "description": "The base URL of your Canvas instance (e.g., https://canvas.instructure.com).",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-10-29T17:57:09.339Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Canvas is a learning management system supporting online courses, assignments, grading, and collaboration, widely used by schools and universities for virtual classrooms",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/canvas.jpeg",
        "app_url": "https://www.instructure.com/canvas",
        "categories": [
          {
            "name": "Education & LMS",
            "slug": "education-&-lms"
          }
        ],
        "triggers_count": 7,
        "tools_count": 84
      },
      "deprecated": {
        "toolkitId": "b4551a6b-2c30-4f41-befc-16152a38204c"
      },
      "actions": [
        {
          "name": "create_course",
          "description": "Creates a new course in canvas within a specified account, with comprehensive configuration options."
        },
        {
          "name": "fetch_data",
          "description": "Fetches a specific category of canvas data (e.g., accounts, courses, users) by setting exactly one `get *` boolean flag to true and providing any associated ids."
        },
        {
          "name": "get_accounts",
          "description": "Retrieves all canvas accounts accessible to the authenticated user."
        },
        {
          "name": "get_all_assignments",
          "description": "Retrieves assignments for a specified canvas course."
        },
        {
          "name": "get_current_user",
          "description": "Retrieves detailed information about the currently authenticated user from the canvas lms."
        },
        {
          "name": "get_submission_files",
          "description": "Retrieves files from a student's canvas assignment submission, processing text, binary, and zip files, and providing s3 download urls if s3 integration is active and uploads are successful."
        },
        {
          "name": "list_courses",
          "description": "Retrieves a list of the current user's courses from canvas, optionally filtered by enrollment type and state."
        },
        {
          "name": "update_course_settings",
          "description": "Updates various settings for an existing course in canvas, identified by `course id`."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/canvas/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"canvas\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CANVAS])",
      "metadata": {
        "totalDownloads": "111",
        "activeUsers": "8",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "canvas"
    },
    "bitbucket": {
      "name": "Bitbucket",
      "slug": "bitbucket",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "OAuth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "webhook,pullrequest:write,project:admin,runner:write,project:write,snippet:write,team:write,pipeline:variable,repository:delete,repository:admin,account:write,wiki,issue:write",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.bitbucket.org/2.0",
                  "description": "The base URL for the Bitbucket API.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Bitbucket is a Git-based code hosting and collaboration platform supporting private and public repositories, enabling teams to manage and review code through pull requests and integrations",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/bitbucket.svg",
        "app_url": "https://bitbucket.org/",
        "categories": [
          {
            "name": "Developer Tools & DevOps",
            "slug": "developer-tools-&-devops"
          }
        ],
        "triggers_count": 0,
        "tools_count": 16
      },
      "deprecated": {
        "toolkitId": "32c765f2-51fa-4af0-829a-3d849a93bd67"
      },
      "actions": [
        {
          "name": "create_branch",
          "description": "Creates a new branch in a bitbucket repository from a target commit hash; the branch name must be unique, adhere to bitbucket's naming conventions, and not include the 'refs/heads/' prefix."
        },
        {
          "name": "create_issue",
          "description": "Creates a new issue in a bitbucket repository, setting the authenticated user as reporter; ensures assignee (if provided) has repository access, and that any specified milestone, version, or component ids exist."
        },
        {
          "name": "create_issue_comment",
          "description": "Adds a new comment with markdown support to an existing bitbucket issue."
        },
        {
          "name": "create_pull_request",
          "description": "Creates a new pull request in a specified bitbucket repository, ensuring the source branch exists and is distinct from the (optional) destination branch."
        },
        {
          "name": "create_repository",
          "description": "Creates a new bitbucket 'git' repository in a specified workspace, defaulting to the workspace's oldest project if `project key` is not provided."
        },
        {
          "name": "delete_issue",
          "description": "Permanently deletes a specific issue, identified by its `issue id`, from the repository specified by `repo slug` within the given `workspace`."
        },
        {
          "name": "delete_repository",
          "description": "Permanently deletes a specified bitbucket repository; this action is irreversible and does not affect forks."
        },
        {
          "name": "get_current_user",
          "description": "Retrieves the profile information (uuid, display name, links, creation date) for the currently authenticated bitbucket user."
        },
        {
          "name": "get_file_from_repository",
          "description": "Retrieves a specific file's content from a bitbucket repository at a given commit (hash, branch, or tag), failing if the file path is invalid for that commit."
        },
        {
          "name": "get_snippet",
          "description": "Retrieves a specific bitbucket snippet by its encoded id from an existing workspace, returning its metadata and file structure."
        },
        {
          "name": "list_pull_requests",
          "description": "Lists pull requests in a specified, accessible bitbucket repository, optionally filtering by state (open, merged, declined)."
        },
        {
          "name": "list_repositories_in_workspace",
          "description": "Lists repositories in a specified bitbucket workspace, accessible to the authenticated user, with options to filter by role or query string, and sort results."
        },
        {
          "name": "list_workspaces",
          "description": "Lists bitbucket workspaces accessible to the authenticated user, optionally filtered and sorted."
        },
        {
          "name": "list_workspace_members",
          "description": "Lists all members of a specified bitbucket workspace; the workspace must exist."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/bitbucket/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"bitbucket\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BITBUCKET])",
      "metadata": {
        "totalDownloads": "657",
        "activeUsers": "132",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "bitbucket"
    },
    "googletasks": {
      "name": "Googletasks",
      "slug": "googletasks",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://www.googleapis.com/auth/tasks",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://tasks.googleapis.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-14T11:09:51.604Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Google Tasks provides a simple to-do list and task management system integrated into Gmail and Google Calendar for quick and easy tracking",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//google-tasks.png",
        "app_url": "https://tasks.google.com/tasks/",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 11
      },
      "deprecated": {
        "toolkitId": "1bf9e38f-a926-4191-bcae-fdc733c0876b"
      },
      "actions": [
        {
          "name": "clear_tasks",
          "description": "Permanently clears all completed tasks from a specified google tasks list; this action is destructive and idempotent."
        },
        {
          "name": "create_task_list",
          "description": "Creates a new task list with the specified title."
        },
        {
          "name": "delete_task",
          "description": "Deletes a specified task from a given task list in google tasks."
        },
        {
          "name": "delete_task_list",
          "description": "Permanently deletes an existing google task list, identified by `tasklist id`, along with all its tasks; this operation is irreversible."
        },
        {
          "name": "get_task",
          "description": "Use to retrieve a specific google task if its `task id` and parent `tasklist id` are known."
        },
        {
          "name": "get_task_list",
          "description": "Retrieves a specific task list from the user's google tasks if the `tasklist id` exists for the authenticated user."
        },
        {
          "name": "insert_task",
          "description": "Creates a new task in a given `tasklist id`, optionally as a subtask of an existing `task parent` or positioned after an existing `task previous` sibling, where both `task parent` and `task previous` must belong to the same `tasklist id` if specified."
        },
        {
          "name": "list_tasks",
          "description": "Retrieves tasks from a google tasks list; all date/time strings must be rfc3339 utc, and `showcompleted` must be true if `completedmin` or `completedmax` are specified."
        },
        {
          "name": "list_task_lists",
          "description": "Fetches the authenticated user's task lists from google tasks; results may be paginated."
        },
        {
          "name": "patch_task",
          "description": "Partially updates an existing task (identified by `task id`) within a specific google task list (identified by `tasklist id`), modifying only the provided attributes from `taskinput` (e.g., `title`, `notes`, `due` date, `status`) and requiring both the task and list to exist."
        },
        {
          "name": "patch_task_list",
          "description": "Updates the title of an existing google tasks task list."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/googletasks/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"googletasks\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GOOGLETASKS])",
      "metadata": {
        "totalDownloads": "82",
        "activeUsers": "45",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "googletasks"
    },
    "discord": {
      "name": "Discord",
      "slug": "discord",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "discord_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "identify,email,connections,guilds,guilds.join,guilds.members.read,applications.commands,messages.read,openid",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://discord.com/api/v10"
          }
        },
        {
          "name": "discord_bearer",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "description": "Token for bearer token auth",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://discord.com/api/v10"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "An instant messaging and VoIP social platform.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/discord.svg",
        "app_url": "​https://discord.com",
        "categories": [
          {
            "name": "gaming",
            "slug": "gaming"
          },
          {
            "name": "social",
            "slug": "social"
          },
          {
            "name": "popular",
            "slug": "popular"
          }
        ],
        "triggers_count": 1,
        "tools_count": 15
      },
      "deprecated": {
        "toolkitId": "896c2b7f-b95f-4103-ad55-92811c4a969b"
      },
      "actions": [
        {
          "name": "get_channel_messages",
          "description": "Retrieves messages from a specified discord channel. this action allows you to fetch recent messages from any channel the authenticated user has access to. messages are returned in reverse chronological order (newest first) by default. preconditions: - the user must have permission to read messages in the specified channel - the channel id must be valid and accessible to the authenticated user"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/discord/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"discord\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.DISCORD])",
      "metadata": {
        "totalDownloads": "449",
        "activeUsers": "136",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "discord"
    },
    "figma": {
      "name": "Figma",
      "slug": "figma",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "figma_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "files:read,file_comments:write,file_dev_resources:read,file_dev_resources:write,webhooks:write",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.figma.com",
                  "description": "Figma is a collaborative design tool supporting real-time editing, prototyping, and feedback, helping product teams iterate on UI/UX in a single environment",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        },
        {
          "name": "figma_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Personal Access Token",
                  "type": "string",
                  "default": null,
                  "description": "Personal access token generated from Figma account settings (Security tab)",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.figma.com",
                  "description": "Figma API base URL",
                  "required": false
                }
              ]
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "A collaborative interface design tool.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/figma.svg",
        "app_url": "https://www.figma.com/",
        "categories": [
          {
            "name": "Design & Creative Tools",
            "slug": "design-&-creative-tools"
          },
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 44
      },
      "deprecated": {
        "toolkitId": "bcf92974-32c1-4c5f-a635-c1f949a42ee3"
      },
      "actions": [
        {
          "name": "get_current_user",
          "description": "Retrieves detailed information for the currently authenticated figma user."
        },
        {
          "name": "get_files_in_a_project",
          "description": "Fetches a list of files in a figma project, optionally including branch metadata."
        },
        {
          "name": "get_projects_in_a_team",
          "description": "Retrieves projects within a specified figma team that are visible to the authenticated user."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/figma/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"figma\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.FIGMA])",
      "metadata": {
        "totalDownloads": "903",
        "activeUsers": "368",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "figma"
    },
    "composio_search": {
      "name": "Composio search",
      "slug": "composio_search",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "Composio Search",
          "mode": "NO_AUTH",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-01-18T08:31:53.034Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Composio Search is an all-in-one tool for searching and scraping the web.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//composio-logo.png",
        "app_url": "https://composio.dev",
        "categories": [
          {
            "name": "AI & Machine Learning",
            "slug": "ai-&-machine-learning"
          }
        ],
        "triggers_count": 0,
        "tools_count": 12
      },
      "deprecated": {
        "toolkitId": "cdc2f57c-ef43-4d6b-b43f-e941ca062b88"
      },
      "actions": [
        {
          "name": "duck_duck_go_search",
          "description": "The duckduckgosearch class utilizes the composio duckduckgo search api to perform searches, focusing on web information and details. it leverages the duckduckgo search engine via the composio duckduckgo search api to retrieve relevant web data based on the provided query."
        },
        {
          "name": "event_search",
          "description": "The eventsearch class enables scraping of google events search queries. it conducts an event search using the composio events search api, retrieving information on events such as concerts, festivals, and other activities based on the provided query."
        },
        {
          "name": "exa_similarlink",
          "description": "Perform a search to find similar links and retrieve a list of relevant results. the search can optionally return contents."
        },
        {
          "name": "finance_search",
          "description": "The financesearch class utilizes the composio finance search api to conduct financial searches, focusing on financial data and stock information. it leverages the google finance search engine via the composio finance search api to retrieve pertinent financial details based on the provided query."
        },
        {
          "name": "google_maps_search",
          "description": "The googlemapssearch class performs a location-specific search using the composio goolge maps search api. this class extends the functionality of the base action class to specifically target locations related to the given query. by utilizing the google maps search engine through the composio goolge maps search api, it fetches the most relevant location data based on the input query. the `googlemapssearch` class is particularly useful for applications that need to retrieve and display location information about a specific area. it leverages the powerful search capabilities of google's maps search engine, ensuring that the returned results are accurate and relevant."
        },
        {
          "name": "image_search",
          "description": "The imagesearch class performs an image search using the composio image search api, to target image data and information. it uses the google images search engine through the composio image search api to fetch relevant image information based on the input query."
        },
        {
          "name": "news_search",
          "description": "The newssearch class performs a news-specific search using the composio news search api. this class extends the functionality of the base action class to specifically target news articles related to the given query. by utilizing the google news search engine through the composio news search api, it fetches the most relevant news articles based on the input query. the `newssearch` class is particularly useful for applications that need to retrieve and display the latest news articles about a specific topic. it leverages the powerful search capabilities of google's news search engine, ensuring that the returned results are current and relevant."
        },
        {
          "name": "scholar_search",
          "description": "Scholar api allows you to scrape results from a google scholar search query. the scholarsearch class performs an academic search using the composio scholar search api, academic papers and scholarly articles. it uses the google scholar search engine through the serp api to fetch relevant academic information based on the input query."
        },
        {
          "name": "search",
          "description": "Perform a google search using the composio google search api."
        },
        {
          "name": "shopping_search",
          "description": "The shoppingsearch class performs a product search using the composio shopping search api.it specifically target shopping results related to the given query. by utilizing the google shopping search engine through the composio shopping search api, it fetches the most relevant product listings based on the input query. the `shoppingsearch` class is particularly useful for applications that need to retrieve and display the latest product listings and shopping results for a specific item. it leverages the powerful search capabilities of google's shopping search engine, ensuring that the returned results are current and relevant."
        },
        {
          "name": "tavily_search",
          "description": "The composio llm search class serves as a gateway to the composio llm search api, allowing users to perform searches across a broad range of content with multiple filtering options. it accommodates complex queries, including both keyword and phrase searches, with additional parameters to fine-tune the search results. this class enables a tailored search experience by allowing users to specify the search depth, include images and direct answers, apply domain-specific filters, and control the number of results returned. it is designed to meet various search requirements, from quick lookups to in-depth research."
        },
        {
          "name": "trends_search",
          "description": "The trendssearch class performs a trend search using the google trends search api, to target trend data and information. it uses the google trends search engine through the google trends search api to fetch relevant trend information based on the input query."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/composio_search/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"composio_search\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.COMPOSIO_SEARCH])",
      "metadata": {
        "totalDownloads": "601",
        "activeUsers": "126",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "composio_search"
    },
    "reddit": {
      "name": "Reddit",
      "slug": "reddit",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "reddit_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "identity read vote submit flair edit",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://oauth.reddit.com",
                  "description": "The base URL for Reddit API requests. For more information, visit https://www.reddit.com/dev/api/",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Connect to Reddit to post and comment.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/reddit.svg",
        "app_url": "https://www.reddit.com",
        "categories": [
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          },
          {
            "name": "Entertainment & Media",
            "slug": "entertainment-&-media"
          }
        ],
        "triggers_count": 0,
        "tools_count": 10
      },
      "deprecated": {
        "toolkitId": "6ae6f8e7-ef5a-4468-ad5a-e0c3b1a02b8a"
      },
      "actions": [
        {
          "name": "edit_reddit_comment_or_post",
          "description": "Edits the body text of the authenticated user's own existing comment or self-post on reddit; cannot edit link posts or titles."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/reddit/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"reddit\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.REDDIT])",
      "metadata": {
        "totalDownloads": "149",
        "activeUsers": "70",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "reddit"
    },
    "cal": {
      "name": "Cal",
      "slug": "cal",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "cal_com_bearer_with_oauth",
          "mode": "CALCOM_AUTH",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client ID",
                  "type": "string",
                  "description": "Client ID for OAuth authentication",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client Secret",
                  "type": "string",
                  "description": "Client Secret for OAuth authentication",
                  "required": true
                }
              ],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "access_token",
                  "displayName": "Access Token",
                  "type": "string",
                  "description": "Access token for OAuth authentication",
                  "required": true
                },
                {
                  "name": "refresh_token",
                  "displayName": "Refresh Token",
                  "type": "string",
                  "description": "Refresh token for OAuth authentication",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.cal.com/"
          }
        },
        {
          "name": "cal_com_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.cal.com/",
                  "description": "The base URL for the Cal.com API.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "API key used for authenticating requests to Cal.com. Use 'cal_' prefix for test mode and 'cal_live_' for live mode.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.cal.com/"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Cal simplifies meeting coordination by providing shareable booking pages, calendar syncing, and availability management to streamline the scheduling process",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//cal-logo.png",
        "app_url": "https://cal.com",
        "categories": [
          {
            "name": "Scheduling & Booking",
            "slug": "scheduling-&-booking"
          }
        ],
        "triggers_count": 0,
        "tools_count": 142
      },
      "deprecated": {
        "toolkitId": "7c5c62a8-ab72-40ec-b822-5229ef76b96b"
      },
      "actions": [
        {
          "name": "connect_to_calendar",
          "description": "Initiates or checks the external connection status for a specified calendar, possibly returning a redirect url for user authorization to complete integration, without altering calendar data."
        },
        {
          "name": "create_or_update_team_profile",
          "description": "Creates a new team profile, or updates one if a 'slug' matches, customizing branding, scheduling, privacy, and operational details."
        },
        {
          "name": "get_organization_id",
          "description": "Retrieves all organization ids associated with the currently authenticated user."
        },
        {
          "name": "get_teams_list",
          "description": "Retrieves all teams the user belongs to, including their names and members."
        },
        {
          "name": "list_event_types",
          "description": "Retrieves cal event types, filterable by `username` (required if `eventslug` is provided), multiple `usernames`, or organization details (`orgslug` or `orgid`)."
        },
        {
          "name": "reserve_slot_for_event",
          "description": "Temporarily reserves an available time slot for an existing and bookable event type, useful for high-demand slots to prevent double-bookings while the user completes the booking."
        },
        {
          "name": "retrieve_calendar_busy_times",
          "description": "To find busy calendar slots for scheduling/conflict detection, call this with a valid `credentialid`, an `externalid` accessible by it, and a recognized iana `loggedinuserstz`; returns only busy intervals, not event details or free slots."
        },
        {
          "name": "retrieve_calendar_list",
          "description": "Retrieves a list of all calendar summaries (no event details) associated with the authenticated user's account."
        },
        {
          "name": "retrieve_my_information",
          "description": "Retrieves the authenticated user's core profile information (e.g., name, email, timezone); does not retrieve related data like calendar events or schedules."
        },
        {
          "name": "retrieve_team_memberships",
          "description": "Retrieves a list of memberships, detailing member roles and statuses, for an existing team specified by `teamid`, with support for pagination."
        },
        {
          "name": "retrieve_users_in_organization",
          "description": "Retrieves users associated with a specific organization id, excluding individual scheduling or calendar data; the `orgid` must be a valid identifier for an existing organization."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/cal/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"cal\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CAL])",
      "metadata": {
        "totalDownloads": "128",
        "activeUsers": "22",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "cal"
    },
    "wrike": {
      "name": "Wrike",
      "slug": "wrike",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "canva_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "Default,wsReadOnly,wsReadWrite,amReadOnlyWorkflow,amReadWriteWorkflow,amReadOnlyInvitation,amReadWriteInvitation,amReadOnlyGroup,amReadWriteGroup,amReadOnlyUser,amReadWriteUser",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Wrike Base URL",
                  "type": "string",
                  "default": "https://www.wrike.com/api/v4",
                  "description": "The base URL of your Wrike instance (e.g., https://www.wrike.com).",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-12-07T14:26:56.975Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Wrike is a project management and collaboration tool offering customizable workflows, Gantt charts, reporting, and resource management to boost team productivity",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/wrike.png",
        "app_url": "https://www.wrike.com",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 38
      },
      "deprecated": {
        "toolkitId": "15a6ad6e-9dc4-47eb-82bb-8406691d1caf"
      },
      "actions": [
        {
          "name": "create_folder",
          "description": "Creates a new wrike subfolder within the specified `folderid`, optionally as a project if `customitemtypeid` is given; the folder is auto-shared with its creator."
        },
        {
          "name": "create_invitation",
          "description": "Invites a user to a wrike workspace by email, optionally with name, specifying either `usertypeid` or a combination of `role`/`external`; custom email subject/message available for paid accounts."
        },
        {
          "name": "create_task",
          "description": "Creates a new task in a specified wrike folder; if setting priority with `prioritybefore` or `priorityafter`, the referenced task must be in the same folder or project."
        },
        {
          "name": "get_account_information",
          "description": "Retrieves detailed wrike account information, where the response content is influenced by selected fields, account subscription, and user permissions."
        },
        {
          "name": "get_all_custom_fields",
          "description": "Retrieves all custom field definitions (including id, name, type, and settings) from the wrike account; this returns the definitions themselves, not their specific values on wrike items, and is useful for obtaining custom field ids."
        },
        {
          "name": "get_information_about_specific_contact",
          "description": "Retrieves detailed information for a specific wrike contact using their unique `contactid`, optionally including `metadata` and `customfields` if specified in the `fields` parameter."
        },
        {
          "name": "modify_account",
          "description": "Updates or adds custom key-value metadata to the wrike account, useful for integrations, storing app-specific data, or mapping external system identifiers."
        },
        {
          "name": "modify_folder",
          "description": "Modifies an existing wrike folder: updates title, description, parents (not root/recycle bin), sharing, metadata, custom fields/columns; restores, converts to project, or manages access roles."
        },
        {
          "name": "modify_task",
          "description": "Modifies an existing wrike task by its id, allowing updates to attributes such as title, status, dates, assignees, and custom fields; `prioritybefore` and `priorityafter` are mutually exclusive, and parent folder ids for `addparents`/`removeparents` cannot be the recycle bin."
        },
        {
          "name": "query_workflows",
          "description": "Fetches a list of all workflows with their detailed information from the wrike account; this is a read-only action and does not support pagination or filtering through its parameters."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/wrike/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"wrike\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.WRIKE])",
      "metadata": {
        "totalDownloads": "112",
        "activeUsers": "13",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "wrike"
    },
    "exa": {
      "name": "Exa",
      "slug": "exa",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "exa_scheme",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Exa API key.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.exa.ai/"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "The Exa class extends the base Tool class to interact with the Exa Search service, offering actions like Search, Similarlink, and Answer.\n    These actions enable querying, finding similar links, and generating answers from search results. Currently, no triggers are defined, but they can be added as needed to enhance functionality.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//exa.png",
        "app_url": "https://exa.ai",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 4
      },
      "deprecated": {
        "toolkitId": "52d547cb-f5d0-4ab5-9709-dde95dc0c77f"
      },
      "actions": [
        {
          "name": "find_similar",
          "description": "Finds web pages semantically similar to a given url using embeddings-based search, optionally retrieving full text, highlights, or summaries for results."
        },
        {
          "name": "search",
          "description": "Performs a web search using the exa engine, useful for queries requiring advanced filtering, specific content categories, or ai-optimized prompting."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/exa/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"exa\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.EXA])",
      "metadata": {
        "totalDownloads": "92",
        "activeUsers": "56",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "exa"
    },
    "sentry": {
      "name": "Sentry",
      "slug": "sentry",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "sentry_bearer_token",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://sentry.io",
                  "description": "The API base URL for Sentry.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "default": null,
                  "description": "Your Sentry authentication token.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-01-06T17:54:35.489Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Integrate Sentry to manage your error tracking and monitoring.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/sentry.svg",
        "app_url": "https://sentry.io/welcome/",
        "categories": [
          {
            "name": "Developer Tools & DevOps",
            "slug": "developer-tools-&-devops"
          }
        ],
        "triggers_count": 0,
        "tools_count": 177
      },
      "deprecated": {
        "toolkitId": "f72149e8-4cd4-4324-99de-2d11122413ae"
      },
      "actions": [
        {
          "name": "access_project_information",
          "description": "Retrieves detailed information for a sentry project, given its existing organization and project id or slug."
        },
        {
          "name": "add_organization_member_via_email",
          "description": "Invites a new member (or re-invites an existing non-accepted member) to a sentry organization via email, allowing specification of organization and team roles."
        },
        {
          "name": "create_release_for_organization",
          "description": "Creates a new sentry release for an existing organization, associating it with specified projects that must belong to that organization."
        },
        {
          "name": "delete_organization_member",
          "description": "Permanently removes a member from a sentry organization, revoking their access to that organization and all its associated projects."
        },
        {
          "name": "get_organization_by_id_or_slug",
          "description": "Retrieves a sentry organization by its id or slug; use the `detailed` parameter to optionally exclude project and team details for a more concise response."
        },
        {
          "name": "get_organization_release_version",
          "description": "Retrieves detailed information, including optional health data and statistics, for a specific release version within a sentry organization."
        },
        {
          "name": "retrieve_project_issues_list",
          "description": "Retrieves a list of issues for a sentry project, defaulting to unresolved issues unless an empty `query` string is provided or specific `hashes` are used."
        },
        {
          "name": "retrieve_team_info_via_organization_id_or_slug",
          "description": "Retrieves detailed information for an existing sentry team within its organization, optionally expanding related data (e.g., projects) or collapsing sections (e.g., organization details)."
        },
        {
          "name": "update_project_details",
          "description": "Updates a sentry project's settings (e.g., name, slug, platform, bookmark status); `isbookmarked` can be updated with `project:read` permission, other fields typically require `project:write` or `project:admin` permissions."
        },
        {
          "name": "update_project_issue_status_and_details",
          "description": "Bulk update attributes of issues in a sentry project, targeting issues by a list of ids or by a query status (which implies updating all matching issues if ids are omitted)."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/sentry/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"sentry\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SENTRY])",
      "metadata": {
        "totalDownloads": "199",
        "activeUsers": "59",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "sentry"
    },
    "snowflake": {
      "name": "Snowflake",
      "slug": "snowflake",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "basic_auth",
          "mode": "BASIC",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "username",
                  "displayName": "Username",
                  "type": "string",
                  "description": "Username for basic auth",
                  "required": true
                },
                {
                  "name": "password",
                  "displayName": "Password",
                  "type": "string",
                  "description": "Password for basic auth",
                  "required": true
                },
                {
                  "name": "account_url",
                  "displayName": "Account ID",
                  "type": "string",
                  "default": null,
                  "description": "Your Snowflake account ID for authentication. This is typically your account name (e.g., 'xy12345' or 'myorganization-myaccount').To find your account ID, click on your account name in the bottom left corner of the Snowflake web interface. The account identifier will be displayed in the account details popup.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{account_url}}.snowflakecomputing.com/api/v2"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Connect to Snowflake to run queries.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/snowflake.svg",
        "app_url": "https://www.snowflake.com/en/",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 6
      },
      "deprecated": {
        "toolkitId": "15e5d506-f0d7-4885-ab93-aa2b0b6d4bae"
      },
      "actions": [
        {
          "name": "describe_table",
          "description": "Retrieves detailed information for each column (including name, data type, kind, nullability, default value, and key status) in a specified snowflake table."
        },
        {
          "name": "explore_columns",
          "description": "Retrieves a sample of distinct values for specified columns from a snowflake table."
        },
        {
          "name": "run_query",
          "description": "Executes the given sql query in snowflake within the specified database and schema (which must exist and be accessible), automatically setting context first."
        },
        {
          "name": "show_databases",
          "description": "Retrieves a list of all databases available in the snowflake account."
        },
        {
          "name": "show_schemas",
          "description": "Retrieves a list of all schemas within a specified snowflake database."
        },
        {
          "name": "show_tables",
          "description": "Retrieves a list of tables, including their row counts and sizes in bytes, from a specified schema within a snowflake database."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/snowflake/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"snowflake\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SNOWFLAKE])",
      "metadata": {
        "totalDownloads": "182",
        "activeUsers": "35",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "snowflake"
    },
    "hackernews": {
      "name": "Hackernews",
      "slug": "hackernews",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "HackerNews",
          "mode": "NO_AUTH",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-06-14T12:12:24.632Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Hacker News is a tech-focused news aggregator by Y Combinator, featuring user-submitted stories and discussions on startups, programming, and emerging trends",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/hackernews.png",
        "app_url": "https://news.ycombinator.com/",
        "categories": [
          {
            "name": "Other / Miscellaneous",
            "slug": "other-/-miscellaneous"
          }
        ],
        "triggers_count": 0,
        "tools_count": 6
      },
      "deprecated": {
        "toolkitId": "7e180336-f7f8-4bb2-a1d5-ed5d8be0c779"
      },
      "actions": [
        {
          "name": "get_frontpage",
          "description": "Get the frontpage posts of hacker news."
        },
        {
          "name": "get_item_with_id",
          "description": "Get a specific item from hacker news using its id. limits response size to prevent context overflow."
        },
        {
          "name": "get_latest_posts",
          "description": "Get the latest posts from hacker news based on optional filters. results can be limited using the size parameter."
        },
        {
          "name": "get_todays_posts",
          "description": "Get today's posts from hacker news."
        },
        {
          "name": "get_user",
          "description": "Get a specific user from hacker news using their username."
        },
        {
          "name": "search_posts",
          "description": "Get relevant posts from hacker news based on a full-text query and optional filters. results can be limited using the size parameter."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/hackernews/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"hackernews\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.HACKERNEWS])",
      "metadata": {
        "totalDownloads": "527",
        "activeUsers": "4480",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "hackernews"
    },
    "elevenlabs": {
      "name": "Elevenlabs",
      "slug": "elevenlabs",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "elevenlabs_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Eleven Labs API key.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.elevenlabs.io"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-06T14:19:58.203Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Create natural AI voices instantly in any language - perfect for video creators, developers, and businesses.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/elevenlabs.png",
        "app_url": "https://www.elevenlabs.io",
        "categories": [
          {
            "name": "voice",
            "slug": "voice"
          },
          {
            "name": "popular",
            "slug": "popular"
          }
        ],
        "triggers_count": 0,
        "tools_count": 59
      },
      "deprecated": {
        "toolkitId": "7305fb8b-1afb-4eaf-9463-1d1e7b716bd6"
      },
      "actions": [
        {
          "name": "add_project",
          "description": "Use to create a new elevenlabs project for text-to-speech synthesis (e.g., audiobooks); a project `name` is required by the api for creation, and content can be initialized using `from url` or `from document`."
        },
        {
          "name": "delete_project",
          "description": "Use to irreversibly delete a specific project by its `project id`; the project must exist and be accessible, and this action cannot be undone."
        },
        {
          "name": "get_projects",
          "description": "Fetches a list of all projects and their details associated with the user's elevenlabs account; this is a read-only operation."
        },
        {
          "name": "get_project_by_id",
          "description": "Use to retrieve all details for a specific project, including its chapters and their conversion statuses, by providing the project's unique id."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/elevenlabs/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"elevenlabs\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ELEVENLABS])",
      "metadata": {
        "totalDownloads": "12",
        "activeUsers": "21",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "elevenlabs"
    },
    "microsoft_teams": {
      "name": "Microsoft teams",
      "slug": "microsoft_teams",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "microsoft-teams_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "Channel.Create,Channel.ReadBasic.All,ChannelMessage.Read.All,ChannelMessage.ReadWrite,ChannelMessage.Send,ChannelSettings.ReadWrite.All,Chat.Create,Chat.Read,Chat.ReadBasic,Chat.ReadWrite,Chat.ReadWrite.All,ChatMessage.Read,ChatMessage.Send,Directory.ReadWrite.All,Group.ReadWrite.All,offline_access,People.Read.All,Presence.ReadWrite,Team.Create,Team.ReadBasic.All,TeamMember.ReadWrite.All,TeamsActivity.Read,TeamsActivity.Send,User.Read,OnlineMeetings.ReadWrite",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://graph.microsoft.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-08T18:57:50.371Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Connect to Microsoft Teams to manage channels.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//microsoft-teams-logo.jpeg",
        "app_url": "https://www.microsoft.com/",
        "categories": [
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          }
        ],
        "triggers_count": 0,
        "tools_count": 13
      },
      "deprecated": {
        "toolkitId": "36b67084-e127-498a-be65-2919b9959679"
      },
      "actions": [
        {
          "name": "create_meeting",
          "description": "Use to schedule a new standalone microsoft teams online meeting, i.e., one not linked to any calendar event."
        },
        {
          "name": "teams_create_chat",
          "description": "Creates a new chat; if a 'oneonone' chat with the specified members already exists, its details are returned, while 'group' chats are always newly created."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/microsoft_teams/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"microsoft_teams\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.MICROSOFT_TEAMS])",
      "metadata": {
        "totalDownloads": "344",
        "activeUsers": "74",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "microsoft_teams"
    },
    "asana": {
      "name": "Asana",
      "slug": "asana",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "asana_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://app.asana.com/api/1.0"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Tool to help teams organize, track, and manage their work.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//asana.png",
        "app_url": "https://asana.com/",
        "categories": [
          {
            "name": "productivity",
            "slug": "productivity"
          },
          {
            "name": "ticketing",
            "slug": "ticketing"
          }
        ],
        "triggers_count": 1,
        "tools_count": 19
      },
      "deprecated": {
        "toolkitId": "5c9b1ee3-00ba-4e4e-8cdc-88a2fd009a75"
      },
      "actions": [
        {
          "name": "add_task_to_section",
          "description": "Adds an existing task to a section, optionally positioning it before or after another task in that section; if no position is specified, the task is added to the end."
        },
        {
          "name": "create_section_in_project",
          "description": "Creates a new section in a project, optionally positioned relative to an existing section in the same project, and returns the full record of the new section."
        },
        {
          "name": "create_subtask",
          "description": "Creates a new asana subtask under an existing parent task (`task gid`); `due on` and `due at` are mutually exclusive and cannot be set simultaneously."
        },
        {
          "name": "create_task_comment",
          "description": "Adds a new text comment (story) to an existing asana task, appearing in its activity feed."
        },
        {
          "name": "get_a_project",
          "description": "Retrieves a specific asana project by its `project gid`, with an option to include additional fields for comprehensive details using `opt fields`; this action does not return tasks within the project."
        },
        {
          "name": "get_a_task",
          "description": "Retrieves full details for a specified task gid accessible by the user; use `opt fields` to customize returned data."
        },
        {
          "name": "get_current_user",
          "description": "Retrieves the authenticated user's full record, including accessible workspaces, often used as an initial call to establish user context for subsequent operations."
        },
        {
          "name": "get_sections_in_project",
          "description": "Returns compact records for all sections (used to group tasks) in a specified project."
        },
        {
          "name": "get_tasks_from_a_project",
          "description": "Retrieves tasks from a specified asana project, allowing filtering by completion status and selection of optional fields for detailed responses."
        },
        {
          "name": "get_teams_in_workspace",
          "description": "Returns the compact records for all teams in the workspace visible to the authorized user."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/asana/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"asana\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ASANA])",
      "metadata": {
        "totalDownloads": "162",
        "activeUsers": "38",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "asana"
    },
    "peopledatalabs": {
      "name": "Peopledatalabs",
      "slug": "peopledatalabs",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "people_data_labs_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.peopledatalabs.com",
                  "description": "The base URL for People Data Labs API.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your People Data Labs API Key.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.peopledatalabs.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-26T12:51:01.301Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "PeopleDataLabs provides B2B data enrichment and identity resolution, empowering organizations to build enriched user profiles and validate customer information",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/pdl.png",
        "app_url": "https://www.peopledatalabs.com/",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 15
      },
      "deprecated": {
        "toolkitId": "c7c3ef8f-00e5-4c6c-a09e-5128550bc857"
      },
      "actions": [
        {
          "name": "autocomplete_field_suggestions",
          "description": "Provides autocompletion suggestions for a specific field (e.g., company, skill, title) based on partial text input."
        },
        {
          "name": "clean_company_data",
          "description": "Cleans and standardizes company information based on a name, website, or profile url; providing at least one of these inputs is highly recommended for meaningful results."
        },
        {
          "name": "clean_location_data",
          "description": "Cleans and standardizes a raw, unformatted location string into a structured representation, provided the input is a recognizable geographical place."
        },
        {
          "name": "company_search_elastic",
          "description": "Searches people data labs *person* profiles using a custom elasticsearch dsl query; ensure the `query` uses person attributes and consult the `dataset` field for data categories."
        },
        {
          "name": "get_column_details",
          "description": "Retrieves predefined enum values for a column name from `enum mappings.json`; `is enum` in the response will be false if the column is not found or is not an enum type."
        },
        {
          "name": "get_schema",
          "description": "Retrieves the schema, including field names, descriptions, and data types, for 'person' or 'company' entity types."
        },
        {
          "name": "natural_language_query_action",
          "description": "Executes a natural language query against the peopledatalabs dataset to retrieve information about people and companies; ensure queries are specific for optimal results."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/peopledatalabs/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"peopledatalabs\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.PEOPLEDATALABS])",
      "metadata": {
        "totalDownloads": "22",
        "activeUsers": "17",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "peopledatalabs"
    },
    "shopify": {
      "name": "Shopify",
      "slug": "shopify",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "OAuth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "read_products,write_products,read_orders,write_orders",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "shop",
                  "displayName": "Store Subdomain",
                  "type": "string",
                  "default": null,
                  "description": "Your Shopify store's subdomain (e.g., your-store-name in your-store-name.myshopify.com)",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{shop}}.myshopify.com/admin/api/2024-04"
          }
        },
        {
          "name": "API_KEY",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "admin_api_access_token",
                  "displayName": "Admin Api Access Token",
                  "type": "string",
                  "default": null,
                  "description": "Your Admin api acess token for authentication which can be generated from your Shopify app settings. Create a Shopify app and configure the required scopes. You can access your app settings and generate the token by visiting https://admin.shopify.com/store/<store-name>/settings/apps/development",
                  "required": true
                },
                {
                  "name": "shop",
                  "displayName": "Store Subdomain",
                  "type": "string",
                  "default": null,
                  "description": "Your Shopify store's subdomain (e.g., your-store-name in your-store-name.myshopify.com)",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{shop}}.myshopify.com/admin/api/2024-04"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "A leading global commerce platform that allows anyone to sell online\n    and in person.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/shopify.svg",
        "app_url": "https://www.shopify.com",
        "categories": [
          {
            "name": "E-commerce",
            "slug": "e-commerce"
          }
        ],
        "triggers_count": 0,
        "tools_count": 26
      },
      "deprecated": {
        "toolkitId": "b891031b-1f9a-4f9a-a301-1495302585a5"
      },
      "actions": [
        {
          "name": "count_product_images",
          "description": "Retrieves the total count of images for a shopify product, useful for inventory management or display logic; the provided `product id` must exist in the store."
        },
        {
          "name": "create_custom_collection",
          "description": "Creates a new custom collection in a shopify store, requiring a unique title for manually curated product groupings (e.g., 'new arrivals', 'seasonal specials')."
        },
        {
          "name": "create_order",
          "description": "Creates a new order in shopify, typically requiring line items; if `customer id` is provided, it must correspond to an existing customer."
        },
        {
          "name": "create_product",
          "description": "Creates a new product in a shopify store; a product title is generally required."
        },
        {
          "name": "get_all_customers",
          "description": "Retrieves customer records from a shopify store, with options for filtering, selecting specific fields, and paginating through the results."
        },
        {
          "name": "get_customer",
          "description": "Retrieves detailed information for a specific customer from a shopify store, provided their valid and existing `customer id`."
        },
        {
          "name": "get_shop_details",
          "description": "Retrieves comprehensive administrative information about the authenticated shopify store, as defined by the shopify api."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/shopify/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"shopify\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SHOPIFY])",
      "metadata": {
        "totalDownloads": "169",
        "activeUsers": "54",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "shopify"
    },
    "linkedin": {
      "name": "Linkedin",
      "slug": "linkedin",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "linkedin_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "openid,profile,w_member_social,email",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.linkedin.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-09-17T17:53:16.638Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Connect to Linked to send and manage emails.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/linkedin.svg",
        "app_url": "https://linkedin.com/",
        "categories": [
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          }
        ],
        "triggers_count": 0,
        "tools_count": 4
      },
      "deprecated": {
        "toolkitId": "f1518b4e-453c-4b0a-b163-674fd61fd1f4"
      },
      "actions": [
        {
          "name": "create_linked_in_post",
          "description": "Creates a new post on linkedin for the authenticated user or an organization they manage; ensure the user has necessary permissions if posting for an organization."
        },
        {
          "name": "delete_linked_in_post",
          "description": "Deletes a specific linkedin post (share) by its unique `share id`, which must correspond to an existing share."
        },
        {
          "name": "get_company_info",
          "description": "Retrieves organizations where the authenticated user has specific roles (acls), to determine their management or content posting capabilities for linkedin company pages."
        },
        {
          "name": "get_my_info",
          "description": "Fetches the authenticated linkedin user's profile, notably including the 'author id' required for attributing content such as posts or articles."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/linkedin/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"linkedin\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.LINKEDIN])",
      "metadata": {
        "totalDownloads": "350",
        "activeUsers": "112",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "linkedin"
    },
    "google_maps": {
      "name": "Google maps",
      "slug": "google_maps",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "google_photos_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://www.googleapis.com/auth/cloud-platform",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://routes.googleapis.com"
          }
        },
        {
          "name": "API_KEY",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your API key for authentication. Obtain it from your Google Maps API Console.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://maps.googleapis.com/maps/api/directions"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-12-31T18:09:42.884Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Google Maps is a web mapping platform and consumer application offering satellite imagery,\n    aerial photography, street maps, 360° interactive panoramic views of streets, real-time\n    traffic conditions, and route planning for traveling by foot, car, bike, air and public\n    transportation.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google_maps.jpeg",
        "app_url": "https://www.google.com/maps",
        "categories": [
          {
            "name": "Other / Miscellaneous",
            "slug": "other-/-miscellaneous"
          }
        ],
        "triggers_count": 0,
        "tools_count": 4
      },
      "deprecated": {
        "toolkitId": "a4b73992-d393-477f-b605-d0aba4854cb9"
      },
      "actions": [
        {
          "name": "get_direction",
          "description": "Fetches detailed directions between an origin and a destination, supporting intermediate waypoints and various travel modes."
        },
        {
          "name": "get_route",
          "description": "Calculates one or more routes between two specified locations using various travel modes and preferences; addresses must be resolvable by google maps."
        },
        {
          "name": "nearby_search",
          "description": "Searches for places (e.g., restaurants, parks) within a specified circular area, with options to filter by place types and customize the returned fields and number of results."
        },
        {
          "name": "text_search",
          "description": "Searches for places on google maps using a textual query (e.g., \"restaurants in london\", \"eiffel tower\")."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/google_maps/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"google_maps\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GOOGLE_MAPS])",
      "metadata": {
        "totalDownloads": "361",
        "activeUsers": "107",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "google_maps"
    },
    "one_drive": {
      "name": "One drive",
      "slug": "one_drive",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "one-drive_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "Files.ReadWrite.All,Sites.Read.All,offline_access",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://graph.microsoft.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-13T15:06:19.198Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "OneDrive is Microsoft’s cloud storage solution enabling users to store, sync, and share files across devices, offering offline access, real-time collaboration, and enterprise-grade security",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/one-drive.svg",
        "app_url": "https://www.microsoft.com/en-in/microsoft-365/onedrive/online-cloud-storage/",
        "categories": [
          {
            "name": "Document & File Management",
            "slug": "document-&-file-management"
          }
        ],
        "triggers_count": 4,
        "tools_count": 7
      },
      "deprecated": {
        "toolkitId": "1e607922-22bd-4525-b4be-b28fe2c515f7"
      },
      "actions": [
        {
          "name": "download_file",
          "description": "Downloads a file from a user's onedrive using its item id, which must refer to a file and not a folder."
        },
        {
          "name": "onedrive_create_folder",
          "description": "Creates a new folder in the user's onedrive, automatically renaming on conflict, optionally within a specified parent folder (by id or full path from root) which, if not the root, must exist and be accessible."
        },
        {
          "name": "onedrive_create_text_file",
          "description": "Creates a new text file with specified content in a onedrive folder, using either the folder's unique id or its absolute path (paths are automatically resolved to ids); note that onedrive may rename or create a new version if the filename already exists."
        },
        {
          "name": "onedrive_find_file",
          "description": "Non-recursively finds an item (file or folder) in a specified onedrive folder; if `folder` is provided as a path, it must actually exist."
        },
        {
          "name": "onedrive_find_folder",
          "description": "Finds folders by name within an accessible parent folder in onedrive, or lists all its direct child folders if no name is specified."
        },
        {
          "name": "onedrive_list_items",
          "description": "Retrieves all files and folders as `driveitem` resources from the root of a specified user's onedrive, automatically handling pagination."
        },
        {
          "name": "onedrive_upload_file",
          "description": "Uploads a file to a specified onedrive folder, automatically renaming on conflict and supporting large files via chunking."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/one_drive/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"one_drive\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ONE_DRIVE])",
      "metadata": {
        "totalDownloads": "217",
        "activeUsers": "32",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "one_drive"
    },
    "docusign": {
      "name": "Docusign",
      "slug": "docusign",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "DOCUSIGN_OAUTH2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "signature,impersonation",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Authorization URL",
                  "type": "string",
                  "default": "https://account.docusign.com",
                  "description": "The auth URL for the DocuSign API, e.g., 'https://account.docusign.com'",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-08T16:28:11.060Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "DocuSign provides eSignature and digital agreement solutions, enabling businesses to send, sign, track, and manage documents electronically",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/docusign.svg",
        "app_url": "https://www.docusign.com",
        "categories": [
          {
            "name": "Document & File Management",
            "slug": "document-&-file-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 342
      },
      "deprecated": {
        "toolkitId": "ff8c7020-f758-4916-a9d6-ed3f248d6a1e"
      },
      "actions": [
        {
          "name": "add_contacts_to_contacts_list",
          "description": "Adds multiple contacts to a user's contacts list in docusign. this endpoint allows for bulk addition of contacts with detailed information, including cloud provider details, phone numbers, email addresses, and notary-specific information. it's particularly useful for populating a user's address book efficiently or synchronizing contacts from external sources. the endpoint supports various contact types, including regular contacts, shared contacts, and signing groups. use this when you need to add or update multiple contacts simultaneously in a docusign account. note that while it can handle a variety of contact information, it does not provide functionality for removing or deactivating contacts."
        },
        {
          "name": "create_envelope_from_template",
          "description": "Creates and sends an envelope using a template. allows multiple recipients with different roles and routing orders."
        },
        {
          "name": "get_envelope",
          "description": "Gets the status and basic information about an envelope from docusign. this action retrieves detailed information about a specific envelope, including: - envelope status (created, sent, delivered, completed, declined, voided) - creation and sent timestamps - subject and message - recipient information and their status - document details - envelope metadata"
        },
        {
          "name": "get_envelope_document_fields",
          "description": "Retrieves the custom document field information from an existing envelope document. the documentid must be a positive 32-bit signed integer (1 through 2147483647). typically the first document has id 1, the second document id 2, and so on, but you can use any numbering scheme within the valid range."
        },
        {
          "name": "get_envelope_doc_gen_form_fields",
          "description": "Given an envelopeid, this method returns the sender fields found in that envelope's documents. after you retrieve the sender fields, you can use the documentgeneration::updateenvelopedocgenformfields method to populate the fields."
        },
        {
          "name": "get_template",
          "description": "Gets a template definition from the specified account. you can include additional template attributes in the response by using the include parameter: - powerforms: includes information about powerforms - tabs: includes information about tabs - documents: includes information about documents - favorite template status: includes the template favoritedbyme property"
        },
        {
          "name": "list_all_templates",
          "description": "Gets the definition of a template or templates in the specified account. note: if the count parameter is not used, listtemplates has a default limit of 2,000 templates. if the account has more than 2,000 templates, listtemplates will return the first 2,000 templates. to retrieve more than 2,000 templates, repeat the api call, specifying start position and count to control the number of templates retrieved."
        },
        {
          "name": "send_envelope",
          "description": "Sends a draft envelope by updating its status to 'sent'. example envelope id format: '93be49ab-xxxx-xxxx-xxxx-f752070d71ec'"
        },
        {
          "name": "update_envelope_doc_gen_form_fields",
          "description": "This method dynamically generates an envelope's documents by populating its sender fields. the envelope must be in a draft state. use the documentgeneration::getenvelopedocgenformfields response to retrieve the list of sender fields for your envelope. use that list to build the request for this method. for each field, specify the field name and the value to populate. important notes: - if update docgen formfields only is false (the default), the documentid changes after the update. - this endpoint does not validate number, date, or select data field values. the request can succeed even if a number or date field value is not a valid number or date, or if a select field value is not one of the allowed values."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/docusign/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"docusign\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.DOCUSIGN])",
      "metadata": {
        "totalDownloads": "196",
        "activeUsers": "22",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "docusign"
    },
    "discordbot": {
      "name": "Discordbot",
      "slug": "discordbot",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "discord_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                },
                {
                  "name": "permissions",
                  "displayName": "Permission Integer",
                  "type": "string",
                  "default": "8",
                  "description": "Permission Integer for the discord bot.",
                  "required": true
                },
                {
                  "name": "bot_token",
                  "displayName": "Bot Token",
                  "type": "string",
                  "default": null,
                  "description": "Token for the discord bot.",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "identify email bot messages.read",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://discord.com/api/v10"
          }
        },
        {
          "name": "discord_bearer",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "bot_token",
                  "displayName": "Bot Token",
                  "type": "string",
                  "default": null,
                  "description": "Token for the discord bot.",
                  "required": true
                }
              ],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "description": "Token for bearer token auth",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://discord.com/api/v10"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-08-30T16:35:54.158Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Discordbot refers to automated programs on Discord servers, performing tasks like moderation, music playback, and user engagement to enhance community interactions",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/discord.svg",
        "app_url": "https://discord.com/",
        "categories": [
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          }
        ],
        "triggers_count": 0,
        "tools_count": 164
      },
      "deprecated": {
        "toolkitId": "3f03c6b2-9485-4c05-8ad5-75ec6703eded"
      },
      "actions": [
        {
          "name": "add_guild_member_role",
          "description": "Assigns a role to a guild member, provided the bot has 'manage roles' permission in the guild and the role to be assigned is hierarchically lower than the bot's highest role."
        },
        {
          "name": "create_dm",
          "description": "Creates a new direct message (dm) channel or retrieves an existing one, using `recipient id` for a 1-on-1 dm or `access tokens` for a group dm; this action only establishes or fetches the channel and does not send messages."
        },
        {
          "name": "create_guild",
          "description": "Creates a new discord guild (server) with the specified name, roles, and channels; icon must be a base64 encoded 128x128 image, and if `afk channel id` is set, `afk timeout` must also be set."
        },
        {
          "name": "delete_guild_member_role",
          "description": "Removes a specified role from a member of a discord guild, provided the member currently possesses that role."
        },
        {
          "name": "get_user",
          "description": "Fetches public information for a discord user, requiring a valid and existing user id (snowflake)."
        },
        {
          "name": "list_guild_members",
          "description": "Retrieves members for a discord guild; requires a valid guild id for an existing guild."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/discordbot/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"discordbot\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.DISCORDBOT])",
      "metadata": {
        "totalDownloads": "140",
        "activeUsers": "26",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "discordbot"
    },
    "salesforce": {
      "name": "Salesforce",
      "slug": "salesforce",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "salesforce_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "full,refresh_token",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "instanceEndpoint",
                  "displayName": "Instance endpoint",
                  "type": "string",
                  "default": "/services/data/v61.0",
                  "description": "The service endpoint for your Salesforce instance eg /services/data/v61.0, used for API requests.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://my.salesforce.com{{instanceEndpoint}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Salesforce is a leading CRM platform integrating sales, service, marketing, and analytics to build customer relationships and drive business growth",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/salesforce.svg",
        "app_url": "https://www.salesforce.com/in/",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Sales & Customer Support",
            "slug": "sales-&-customer-support"
          }
        ],
        "triggers_count": 2,
        "tools_count": 34
      },
      "deprecated": {
        "toolkitId": "edd1e300-a402-4dc9-b91c-8f54e3254166"
      },
      "actions": [
        {
          "name": "account_creation_with_content_type_option",
          "description": "Creates a new salesforce account using a json post request, requiring 'name'; specific fields (e.g., custom, dunsnumber) may have org-level prerequisites."
        },
        {
          "name": "create_campaign_record_via_post",
          "description": "Creates a new campaign record in salesforce; if 'parentid' is provided, it must be a valid id of an existing campaign record, and if 'ownerid' is provided, it must be a valid id of an active user."
        },
        {
          "name": "create_lead_with_specified_content_type",
          "description": "Creates a new lead in salesforce, requiring `lastname` and `company` unless person accounts are enabled and `company` is null."
        },
        {
          "name": "create_note_record_with_content_type_header",
          "description": "Creates a new note record in salesforce, associated with an existing salesforce object via `parentid`, automatically including a `content-type: application/json` header."
        },
        {
          "name": "execute_soql_query",
          "description": "Executes the provided soql query against salesforce; the query must begin with 'select'."
        },
        {
          "name": "fetch_modified_or_unmodified_sobjects",
          "description": "Fetches sobjects from `/sobjects` based on caller-set 'if-modified-since' (returns objects modified after a date, or 304 status if none) or 'if-unmodified-since' (returns objects if unmodified since a date, or 412 status if modified) http headers."
        },
        {
          "name": "query_contacts_by_name",
          "description": "Finds salesforce contact records by name using a case-insensitive search."
        },
        {
          "name": "remove_account_by_unique_identifier",
          "description": "Deletes an existing salesforce account using its unique id, returning an empty response on success (http 204)."
        },
        {
          "name": "retrieve_account_data_and_error_responses",
          "description": "Retrieves comprehensive metadata for the salesforce account sobject, detailing its properties, recent records, and related resource urls."
        },
        {
          "name": "retrieve_campaign_data_with_error_handling",
          "description": "Retrieves comprehensive information and metadata for the salesforce campaign sobject, provided it is enabled and accessible in the organization, and features robust error handling."
        },
        {
          "name": "retrieve_lead_by_id",
          "description": "Retrieves details for a salesforce lead by its id; the specified lead id must exist in salesforce."
        },
        {
          "name": "retrieve_lead_data_with_various_responses",
          "description": "Retrieves lead sobject data from salesforce, such as recently viewed leads or general lead object information."
        },
        {
          "name": "retrieve_note_with_conditions",
          "description": "Retrieves a salesforce note object by its id, optionally specifying which fields to return; the note id must exist."
        },
        {
          "name": "retrieve_opportunities_data",
          "description": "Retrieves all available opportunity records, representing potential revenue-generating deals, from salesforce."
        },
        {
          "name": "retrieve_specific_contact_by_id",
          "description": "Retrieves a salesforce contact by its unique id; the id must correspond to an existing contact record in salesforce."
        },
        {
          "name": "update_contact_by_id",
          "description": "Updates specified fields of an existing salesforce contact by its id; at least one field must be provided for modification."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/salesforce/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"salesforce\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SALESFORCE])",
      "metadata": {
        "totalDownloads": "310",
        "activeUsers": "46",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "salesforce"
    },
    "twitter_media": {
      "name": "Twitter media",
      "slug": "twitter_media",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH1"
      ],
      "auth_config_details": [
        {
          "name": "twitter_oauth",
          "mode": "OAUTH1",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.x.com",
                  "description": "The base URL for Twitter API requests. For more information, visit https://developer.twitter.com/en/docs/twitter-api",
                  "required": false
                },
                {
                  "name": "oauth_token",
                  "displayName": "OAUTH1 Token",
                  "type": "string",
                  "default": "",
                  "description": "Generated by Twitter",
                  "required": false
                },
                {
                  "name": "oauth_token_secret",
                  "displayName": "OAUTH1 Token Secret",
                  "type": "string",
                  "default": "",
                  "description": "Generated by Twitter",
                  "required": false
                },
                {
                  "name": "consumer_key",
                  "displayName": "Consumer Key",
                  "type": "string",
                  "default": "",
                  "description": "Consumer Key, either Composio's or User's",
                  "required": false
                },
                {
                  "name": "consumer_secret",
                  "displayName": "Consumer Secret",
                  "type": "string",
                  "default": "",
                  "description": "Consumer Secret, either Composio's or User's",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-19T07:19:08.231Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Twitter Media focuses on multimedia tools and features within Twitter, allowing brands to leverage rich content for marketing campaigns",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/twitter.png",
        "app_url": "https://x.com/",
        "categories": [
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "98f9429e-134f-4ba5-9456-3d08dee97212"
      },
      "actions": [
        {
          "name": "upload_media",
          "description": "Upload media to twitter"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/twitter_media/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"twitter_media\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.TWITTER_MEDIA])",
      "metadata": {
        "totalDownloads": "229",
        "activeUsers": "32",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "twitter_media"
    },
    "calendly": {
      "name": "Calendly",
      "slug": "calendly",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "calendly_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.calendly.com",
                  "description": "The base URL for calendly API requests. For more information, visit https://developer.calendly.com/api-docs",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Calendly is an appointment scheduling tool that automates meeting invitations, availability checks, and reminders, helping individuals and teams avoid email back-and-forth",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/calendly.svg",
        "app_url": "https://calendly.com/",
        "categories": [
          {
            "name": "Scheduling & Booking",
            "slug": "scheduling-&-booking"
          }
        ],
        "triggers_count": 0,
        "tools_count": 42
      },
      "deprecated": {
        "toolkitId": "7e1f88f1-455e-4216-a2c9-3811b0dd13b5"
      },
      "actions": [
        {
          "name": "get_user",
          "description": "Retrieves comprehensive details for an existing calendly user."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/calendly/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"calendly\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CALENDLY])",
      "metadata": {
        "totalDownloads": "273",
        "activeUsers": "47",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "calendly"
    },
    "trello": {
      "name": "Trello",
      "slug": "trello",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH1"
      ],
      "auth_config_details": [
        {
          "name": "trello_oauth",
          "mode": "OAUTH1",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "consumer_key",
                  "displayName": "Consumer key",
                  "type": "string",
                  "description": "Consumer key of the app",
                  "required": true
                },
                {
                  "name": "consumer_secret",
                  "displayName": "Consumer secret",
                  "type": "string",
                  "description": "Consumer secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "read,write,account",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.trello.com/1"
          }
        },
        {
          "name": "trello_bearer",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "description": "Token for bearer token auth",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.trello.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "A web-based, kanban-style, list-making application.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/trello.svg",
        "app_url": "https://trello.com",
        "categories": [
          {
            "name": "productivity",
            "slug": "productivity"
          },
          {
            "name": "ticketing",
            "slug": "ticketing"
          },
          {
            "name": "popular",
            "slug": "popular"
          }
        ],
        "triggers_count": 5,
        "tools_count": 323
      },
      "deprecated": {
        "toolkitId": "205c1262-8b93-4b8b-85fa-e262e7e0e364"
      },
      "actions": [
        {
          "name": "add_boards",
          "description": "Creates a new trello board; the 'name' parameter is required for creation, and various preferences can be customized or cloned from a source board."
        },
        {
          "name": "add_cards",
          "description": "Creates a new card in a trello list; `idlist` is required, and if `idcardsource` is used, the source card must be accessible."
        },
        {
          "name": "add_lists",
          "description": "Creates a new list on a specified trello board, with options to copy an existing list, set its position, initial state (archived/subscribed), and does not modify existing lists or move cards."
        },
        {
          "name": "delete_cards_by_id_card",
          "description": "Permanently deletes an archived trello card specified by its `idcard`."
        },
        {
          "name": "get_boards_by_id_board",
          "description": "Fetches comprehensive details for a specific trello board by its id; this is a read-only action."
        },
        {
          "name": "get_boards_cards_by_id_board",
          "description": "Retrieves cards from an existing trello board, allowing filtering and customization of fields for cards, attachments, and members."
        },
        {
          "name": "get_lists_board_by_id_list",
          "description": "Retrieves the board to which a specific trello list belongs."
        },
        {
          "name": "get_members_by_id_member",
          "description": "Fetches comprehensive information about a trello member, specified by id or username, including profile, activities, boards, cards, notifications, and organization affiliations, with customizable detail levels via filters and field parameters."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/trello/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"trello\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.TRELLO])",
      "metadata": {
        "totalDownloads": "137",
        "activeUsers": "65",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "trello"
    },
    "apollo": {
      "name": "Apollo",
      "slug": "apollo",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "apollo_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Apollo API key for authentication. Obtain it from your Apollo settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.apollo.io/api/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-12-23T11:46:33.925Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Apollo provides CRM and lead generation capabilities, helping businesses discover contacts, manage outreach, and track sales pipelines for consistent customer relationship development",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/apollo.jpg",
        "app_url": "https://www.apollo.io/",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Sales & Customer Support",
            "slug": "sales-&-customer-support"
          }
        ],
        "triggers_count": 0,
        "tools_count": 31
      },
      "deprecated": {
        "toolkitId": "cfc32298-c570-4460-aa57-410b13631dc7"
      },
      "actions": [
        {
          "name": "add_contacts_to_sequence",
          "description": "Adds contacts to a specified apollo email sequence by initiating an asynchronous background job and returning its details."
        },
        {
          "name": "bulk_organization_enrichment",
          "description": "Enriches data for up to 10 organizations simultaneously by providing a list of their base company domains (e.g., 'apollo.io', not 'www.apollo.io')."
        },
        {
          "name": "bulk_people_enrichment",
          "description": "Use to enrich multiple person profiles simultaneously with comprehensive data from apollo's database."
        },
        {
          "name": "bulk_update_account_stage",
          "description": "Bulk updates the stage for specified existing apollo.io accounts, moving them to a valid new account stage."
        },
        {
          "name": "get_labels",
          "description": "Retrieves all labels from apollo.io, used for organizing contacts and accounts."
        },
        {
          "name": "get_opportunity_stages",
          "description": "Retrieves all configured opportunity (deal) stages from the apollo.io account."
        },
        {
          "name": "get_organization_job_postings",
          "description": "Retrieves paginated job postings for a specified organization by its id, optionally filtering by domain; ensure `organization id` is a valid identifier."
        },
        {
          "name": "get_typed_custom_fields",
          "description": "Retrieves all typed custom field definitions available in the apollo.io instance, detailing their types and configurations."
        },
        {
          "name": "list_email_accounts",
          "description": "Retrieves all email accounts and their details for the authenticated user; takes no parameters."
        },
        {
          "name": "people_search",
          "description": "Searches apollo's contact database for people using various filters; results are limited to 50,000 records and this action does not enrich contact data."
        },
        {
          "name": "search_sequences",
          "description": "Searches for sequences (e.g., automated email campaigns) in apollo.io."
        },
        {
          "name": "search_tasks",
          "description": "Searches for tasks in apollo.io using filters like keywords, date ranges (due, created, updated), priorities, types, assigned users, associated contacts/accounts, supporting sorting and pagination."
        },
        {
          "name": "update_contact_ownership",
          "description": "Updates the ownership of specified apollo contacts to a given apollo user, who must be part of the same team."
        },
        {
          "name": "update_contact_stage",
          "description": "Updates the stage for one or more existing contacts in apollo.io to a new valid contact stage, useful for managing sales funnel progression."
        },
        {
          "name": "update_contact_status_in_sequence",
          "description": "Updates a contact's status within a designated apollo sequence, but cannot set the status to 'active'."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/apollo/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"apollo\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.APOLLO])",
      "metadata": {
        "totalDownloads": "183",
        "activeUsers": "29",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "apollo"
    },
    "semrush": {
      "name": "Semrush",
      "slug": "semrush",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "API_KEY",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "API key for the Semrush API",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.semrush.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-02-17T14:03:05.493Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Semrush is a popular SEO tool suite that specializes in keyword research, competitor analysis, and Google Ad campaign optimization.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/semrush.png",
        "app_url": "https://www.semrush.com/",
        "categories": [
          {
            "name": "SEO",
            "slug": "seo"
          }
        ],
        "triggers_count": 0,
        "tools_count": 36
      },
      "deprecated": {
        "toolkitId": "781cd007-b8e4-46b3-9331-d593ec6e708a"
      },
      "actions": [
        {
          "name": "keyword_difficulty",
          "description": "Determines the keyword difficulty (kd) score (0-100, higher means greater difficulty) for a given phrase in a specific semrush regional database to assess its seo competitiveness."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/semrush/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"semrush\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SEMRUSH])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "semrush"
    },
    "mem0": {
      "name": "Mem0",
      "slug": "mem0",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "mem0_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Mem0 API key for authentication. Obtain it from your Mem0 settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.mem0.ai"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-05T07:35:05.286Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Mem0",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//mem0.png",
        "app_url": "https://mem0.ai/",
        "categories": [
          {
            "name": "AI & Machine Learning",
            "slug": "ai-&-machine-learning"
          },
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 43
      },
      "deprecated": {
        "toolkitId": "70015bb3-b299-4039-8642-3e7aaa834b06"
      },
      "actions": [
        {
          "name": "add_new_memory_records",
          "description": "Stores new memory records from a list of messages, optionally inferring structured content; requires association via `agent id`, `user id`, `app id`, or `run id`."
        },
        {
          "name": "add_organization_member",
          "description": "Adds a new member, who must be a registered user, to an organization, assigning them a specific role."
        },
        {
          "name": "create_a_new_organization_entry",
          "description": "Creates a new organization entry using the provided name and returns its details."
        },
        {
          "name": "create_project",
          "description": "Creates a new project with a given name within an organization that must already exist."
        },
        {
          "name": "delete_memories_endpoint",
          "description": "Deletes memories matching specified filter criteria; omitting all filters may result in deleting all memories."
        },
        {
          "name": "perform_semantic_search_on_memories",
          "description": "Searches memories semantically using a natural language query (required if `only metadata based search` is false) and/or metadata filters."
        },
        {
          "name": "retrieve_memory_by_unique_identifier",
          "description": "Retrieves a complete memory entry by its unique identifier; `memory id` must be valid and for an existing memory."
        },
        {
          "name": "search_memories_with_query_filters",
          "description": "Semantically searches memories using a natural language query and mandatory structured filters, offering options to rerank results and select specific fields; any provided `org id` or `project id` must reference a valid existing entity."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/mem0/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"mem0\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.MEM0])",
      "metadata": {
        "totalDownloads": "605",
        "activeUsers": "102",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "mem0"
    },
    "neon": {
      "name": "Neon",
      "slug": "neon",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "neon_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your API key for authentication. Obtain it from your account settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://console.neon.tech/api/v2"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-01-03T08:00:47.377Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Postgres, on a serverless platform designed to help you build reliable and scalable applications faster",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/neon.png",
        "app_url": "https://neon.tech/",
        "categories": [
          {
            "name": "Developer Tools & DevOps",
            "slug": "developer-tools-&-devops"
          }
        ],
        "triggers_count": 0,
        "tools_count": 69
      },
      "deprecated": {
        "toolkitId": "820b239f-1d67-4757-933e-ae1ffa716e32"
      },
      "actions": [
        {
          "name": "access_project_details_by_id",
          "description": "Retrieves detailed information about a specific project within the neon b2b saas integration platform. this endpoint is used to fetch comprehensive data about a project, including its configuration, associated workflows, and current status. it's particularly useful when you need to review or analyze the settings and progress of an integration project. the endpoint should be used when detailed project information is required, such as during troubleshooting, reporting, or when preparing to make updates to a project. it does not modify any project data and is safe for frequent calls. however, it may not provide real-time updates for ongoing integration processes; for that, a separate status or logs endpoint might be more appropriate."
        },
        {
          "name": "create_vpc_endpoint_with_label",
          "description": "Updates the label of a specific vpc endpoint within an organization's virtual private cloud (vpc) in a particular aws region. this endpoint allows you to change the descriptive name or identifier associated with a vpc endpoint, which can be useful for better organization and management of your vpc resources. the new label helps in identifying and categorizing the vpc endpoint within your infrastructure. this endpoint should be used when you need to modify the existing label of a vpc endpoint, perhaps due to changes in its purpose or to align with updated naming conventions in your organization. it's important to note that this operation only updates the label and does not affect the functionality or configuration of the vpc endpoint itself."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/neon/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"neon\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.NEON])",
      "metadata": {
        "totalDownloads": "121",
        "activeUsers": "39",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "neon"
    },
    "weathermap": {
      "name": "Weathermap",
      "slug": "weathermap",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "WeatherMap",
          "mode": "NO_AUTH",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-06-08T10:53:11.814Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "WeatherMap provides visual weather data, forecasts, and mappings, helping users understand climate patterns or track severe weather conditions",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/weathermap.png",
        "app_url": "https://openweathermap.org/weathermap",
        "categories": [
          {
            "name": "Other / Miscellaneous",
            "slug": "other-/-miscellaneous"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "f2014487-c21d-41a4-b3b2-0e7c6aa72e7d"
      },
      "actions": [
        {
          "name": "weather",
          "description": "Tool for querying the openweathermap api."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/weathermap/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"weathermap\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.WEATHERMAP])",
      "metadata": {
        "totalDownloads": "135",
        "activeUsers": "57",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "weathermap"
    },
    "posthog": {
      "name": "Posthog",
      "slug": "posthog",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "posthog_apikey",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "subdomain",
                  "displayName": "Sub Domain",
                  "type": "string",
                  "default": "us.i",
                  "description": "On public US Cloud, use https://us.i.posthog.com and https://us.posthog.com for private ones; on public  EU Cloud, use https://eu.i.posthog.com and https://eu.posthog.com for private ones.",
                  "required": true
                }
              ],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "apiKey",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "You can find your API key in your project settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{subdomain}}.posthog.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-08-13T09:10:05.121Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "PostHog is an open-source product analytics platform tracking user interactions and behaviors to help teams refine features, improve funnels, and reduce churn",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/posthog.svg",
        "app_url": "https://posthog.com/",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 358
      },
      "deprecated": {
        "toolkitId": "8153cee4-4659-48ec-9bd2-27b36603e42b"
      },
      "actions": [
        {
          "name": "list_projects_in_organization_with_pagination",
          "description": "Projects for the current organization."
        },
        {
          "name": "list_project_group_types_by_id",
          "description": "Retrieve a list of group types within a specific project by providing the project id. this endpoint requires authentication with a personalapikey and grants read access to group data."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/posthog/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"posthog\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.POSTHOG])",
      "metadata": {
        "totalDownloads": "318",
        "activeUsers": "68",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "posthog"
    },
    "clickup": {
      "name": "Clickup",
      "slug": "clickup",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "clickup_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.clickup.com/api/v2"
          }
        },
        {
          "name": "API_KEY",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your api key is obtained from Clickup Settings",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.clickup.com/api/v2"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "ClickUp unifies tasks, docs, goals, and chat in a single platform, allowing teams to plan, organize, and collaborate across projects with customizable workflows",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/clickup.png",
        "app_url": "https://clickup.com",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 126
      },
      "deprecated": {
        "toolkitId": "e8b880d2-125c-41da-b8ad-7f8190c0f555"
      },
      "actions": [
        {
          "name": "create_folder",
          "description": "Creates a new clickup folder within the specified space, which must exist and be accessible."
        },
        {
          "name": "create_list",
          "description": "Creates a new list in clickup within a specified, existing folder."
        },
        {
          "name": "create_task",
          "description": "Creates a new clickup task in a specific list, optionally as a subtask if a `parent` task id (which cannot be a subtask itself and must be in the same list) is provided."
        },
        {
          "name": "create_task_comment",
          "description": "Adds a comment to a clickup task; `team id` is required if `custom task ids` is true."
        },
        {
          "name": "delete_task",
          "description": "Permanently deletes a task, using its standard id or a custom task id (requires `custom task ids=true` and `team id`)."
        },
        {
          "name": "get_task",
          "description": "Retrieves comprehensive details for a clickup task by its id, supporting standard or custom task ids (requires `team id` for custom ids)."
        },
        {
          "name": "update_task",
          "description": "Updates attributes of an existing task; `team id` is required if `custom task ids` is true, use a single space (\" \") for `description` to clear it, and provide at least one modifiable field."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/clickup/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"clickup\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CLICKUP])",
      "metadata": {
        "totalDownloads": "236",
        "activeUsers": "62",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "clickup"
    },
    "brevo": {
      "name": "Brevo",
      "slug": "brevo",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "brevo_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.brevo.com/v3/"
          }
        },
        {
          "name": "brevo_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Brevo API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Brevo API Key, available in your Brevo (formerly Sendinblue) account settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.brevo.com/v3/"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Brevo (formerly Sendinblue) is an all-in-one email and SMS marketing platform that provides transactional messaging, marketing automation, contact management, and CRM tools to help businesses communicate and engage with their customers.",
        "logo": "https://www.brevo.com/favicon.ico",
        "app_url": "https://www.brevo.com",
        "categories": [
          {
            "name": "Email Marketing",
            "slug": "email-marketing"
          },
          {
            "name": "SMS Marketing",
            "slug": "sms-marketing"
          },
          {
            "name": "Marketing Automation",
            "slug": "marketing-automation"
          }
        ],
        "triggers_count": 0,
        "tools_count": 19
      },
      "deprecated": {
        "toolkitId": "f4d2a460-2b2f-448c-9dce-107b1a683184"
      },
      "actions": [
        {
          "name": "create_a_company",
          "description": "This tool allows you to create a new company in your brevo account."
        },
        {
          "name": "create_or_update_email_template",
          "description": "This tool creates a new email template or updates an existing one in brevo. if a 'templateid' is provided, it performs an update; otherwise, it creates a new template."
        },
        {
          "name": "create_sms_campaign",
          "description": "This tool allows you to create a new sms campaign in brevo. you can specify the campaign name, sender, content, recipients (by providing list ids, exclusion list ids, or segment ids), and optionally schedule the campaign for a specific time. you can also enable unicode characters, add an organization prefix, and include unsubscribe instructions."
        },
        {
          "name": "delete_company",
          "description": "Deletes a company from brevo using its unique identifier."
        },
        {
          "name": "delete_contact",
          "description": ""
        },
        {
          "name": "delete_email_template",
          "description": "This tool deletes an inactive email template from brevo. you need to provide the 'templateid' of the email template you want to delete. only inactive templates can be deleted."
        },
        {
          "name": "delete_sms_campaign",
          "description": "This tool deletes an existing sms campaign."
        },
        {
          "name": "find_contact",
          "description": "This tool checks if a contact exists in brevo. it searches for a contact using either an email address or mobile number, with the email being prioritized if both are provided."
        },
        {
          "name": "get_account_info",
          "description": "This tool retrieves information about the brevo account, including account holder's email, first name, last name, company name, and address, as well as details about the current plan such as type, credits, start date, and end date."
        },
        {
          "name": "get_all_contacts",
          "description": "This tool retrieves all contacts from your brevo account. it allows for pagination and filtering based on modification/creation dates, list ids, segment ids, and contact attributes."
        },
        {
          "name": "get_all_email_templates",
          "description": "This tool retrieves a list of all email templates created in your brevo account. it corresponds to the get /v3/smtp/templates endpoint as per the brevo api documentation, with optional parameters for filtering (templatestatus), pagination (limit, offset), and sorting (asc/desc)."
        },
        {
          "name": "get_all_senders",
          "description": "This tool retrieves a list of all senders associated with the brevo account. senders are the email addresses or domains that are authorized to send emails through brevo. this action can be useful for managing and verifying sender identities."
        },
        {
          "name": "get_company_details",
          "description": "This tool retrieves the details of a specific company by its unique id."
        },
        {
          "name": "get_contact_details",
          "description": "This tool retrieves detailed information about a specific contact in brevo. you can identify the contact using their email address (url-encoded), their unique contact id, or their sms attribute value."
        },
        {
          "name": "get_sms_campaigns",
          "description": "This tool retrieves a list of all sms campaigns created in brevo. it supports filtering by status, start date, and end date, and also allows controlling the number of results returned (limit), the starting point in the list (offset), and the sort order (asc or desc)."
        },
        {
          "name": "get_sms_campaign_details",
          "description": "Retrieves the details of a specific sms campaign."
        },
        {
          "name": "list_all_companies",
          "description": "This action retrieves a list of all companies stored in the brevo crm. it supports pagination and filtering by name and other attributes."
        },
        {
          "name": "list_email_campaigns",
          "description": "This tool retrieves a list of all email campaigns associated with the user's brevo account. it allows filtering by campaign type, status, start date, and end date. the response includes the total count of campaigns and an array of campaign objects, each containing details like id, name, subject, type, status, scheduled date/time, sender information, and optionally, campaign statistics."
        },
        {
          "name": "update_email_campaign",
          "description": ""
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/brevo/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"brevo\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BREVO])",
      "metadata": {
        "totalDownloads": "75",
        "activeUsers": "10",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "brevo"
    },
    "stripe": {
      "name": "Stripe",
      "slug": "stripe",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "stripe_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Stripe API key for authentication. Obtain it from your Stripe Dashboard under Developers > API Keys.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.stripe.com/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-12-23T11:46:33.925Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Stripe offers online payment infrastructure, fraud prevention, and APIs enabling businesses to accept and manage payments globally",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/stripe.jpeg",
        "app_url": "https://stripe.com",
        "categories": [
          {
            "name": "Finance & Accounting",
            "slug": "finance-&-accounting"
          },
          {
            "name": "E-commerce",
            "slug": "e-commerce"
          }
        ],
        "triggers_count": 7,
        "tools_count": 33
      },
      "deprecated": {
        "toolkitId": "3ff781de-0918-4e8c-801c-e6b1c1d0b1c7"
      },
      "actions": [
        {
          "name": "cancel_subscription",
          "description": "Cancels a customer's active stripe subscription at the end of the current billing period, with options to invoice immediately for metered usage and prorate charges for unused time."
        },
        {
          "name": "create_customer",
          "description": "Creates a new customer in stripe, required for creating charges or subscriptions; an email is highly recommended for customer communications."
        },
        {
          "name": "create_invoice",
          "description": "Creates a new draft stripe invoice for a customer; use to revise an existing invoice, bill for a specific subscription (which must belong to the customer), or apply detailed customizations."
        },
        {
          "name": "create_payment_intent",
          "description": "Creates a stripe paymentintent to initiate and process a customer's payment; using `application fee amount` for a connected account requires the `stripe-account` header."
        },
        {
          "name": "create_price",
          "description": "Creates a new stripe price for a product, defining its charges (one-time or recurring) and billing scheme; requires either an existing `product` id or `product data`."
        },
        {
          "name": "create_product",
          "description": "Creates a new product in stripe, encoding the request as `application/x-www-form-urlencoded` by flattening nested structures."
        },
        {
          "name": "create_refund",
          "description": "Creates a full or partial refund in stripe, targeting either a specific charge id or a payment intent id."
        },
        {
          "name": "create_subscription",
          "description": "Creates a new, highly configurable subscription for an existing stripe customer, supporting multiple items, trials, discounts, and various billing/payment options."
        },
        {
          "name": "delete_customer",
          "description": "Permanently deletes an existing stripe customer; this irreversible action also cancels their active subscriptions and removes all associated data."
        },
        {
          "name": "list_customer_payment_methods",
          "description": "Retrieves a list of payment methods for a given customer, supporting type filtering and pagination."
        },
        {
          "name": "list_payment_links",
          "description": "Retrieves a list of payment links from stripe, sorted by creation date in descending order by default."
        },
        {
          "name": "list_refunds",
          "description": "Lists stripe refunds, sorted by creation date descending (newest first), with optional filtering by charge or payment intent and pagination support."
        },
        {
          "name": "list_shipping_rates",
          "description": "Retrieves a list of stripe shipping rates, filterable by active status, creation date, and currency; useful for managing or displaying shipping options."
        },
        {
          "name": "list_tax_rates",
          "description": "Retrieves a list of tax rates, which are returned sorted by creation date in descending order."
        },
        {
          "name": "retrieve_charge",
          "description": "Retrieves full details for an existing stripe charge using its unique id."
        },
        {
          "name": "retrieve_payment_intent",
          "description": "Retrieves a paymentintent by its id; `client secret` is required if a publishable api key is used."
        },
        {
          "name": "retrieve_refund",
          "description": "Retrieves details for an existing stripe refund using its unique `refund id`."
        },
        {
          "name": "search_customers",
          "description": "Retrieves a list of stripe customers matching a search query that adheres to stripe's search query language."
        },
        {
          "name": "update_payment_intent",
          "description": "Updates a stripe paymentintent with new values for specified parameters; note that if `currency` is updated, `amount` might also be required, and certain updates (e.g., to `payment method`) can necessitate re-confirmation by the customer."
        },
        {
          "name": "update_subscription",
          "description": "Updates an existing, non-canceled stripe subscription by its id, ensuring all referenced entity ids (e.g., prices, coupons) are valid and automatic tax liability is correctly specified if enabled."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/stripe/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"stripe\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.STRIPE])",
      "metadata": {
        "totalDownloads": "251",
        "activeUsers": "52",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "stripe"
    },
    "klaviyo": {
      "name": "Klaviyo",
      "slug": "klaviyo",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "klaviyo_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "accounts:read campaigns:read campaigns:write conversations:read conversations:write catalogs:read catalogs:write coupons:read coupons:write coupon-codes:read coupon-codes:write data-privacy:read data-privacy:write events:read events:write flows:read flows:write images:read images:write lists:read lists:write metrics:read metrics:write profiles:read profiles:write push-tokens:read push-tokens:write segments:read segments:write subscriptions:read subscriptions:write tags:read tags:write templates:read templates:write",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://a.klaviyo.com"
          }
        },
        {
          "name": "API_KEY",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your API key for authentication. Obtain it from your Klaviyo settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://a.klaviyo.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Klaviyo is a data-driven email and SMS marketing platform that allows e-commerce brands to deliver targeted messages, track conversions, and scale customer relationships",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//klaviyo.png",
        "app_url": "https://www.klaviyo.com/",
        "categories": [
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          }
        ],
        "triggers_count": 0,
        "tools_count": 232
      },
      "deprecated": {
        "toolkitId": "5dfe4aca-0105-4cb5-8711-eaa34eae6ece"
      },
      "actions": [
        {
          "name": "add_profile_to_list",
          "description": "Add profiles to a klaviyo list by profile ids or email addresses. this action subscribes profiles to a marketing list, which is ideal for giving marketing consent. you can add up to 1000 profiles per call using either their klaviyo profile ids or email addresses. rate limits: 10/s burst, 150/m steady. required scopes: `lists:write` and `profiles:write`. preconditions: - either profile ids or emails must be provided (not both) - maximum 1000 profiles per call - email addresses must be valid format - the list must exist and be accessible"
        },
        {
          "name": "create_campaign_recipient_estimation_job",
          "description": "Start an asynchronous task to estimate the number of recipients for a campaign. this action creates a background job that calculates how many profiles would receive the campaign based on its current audience settings. use the job id returned to track progress with the 'get campaign recipient estimation job' action, and get the final count via 'get campaign recipient estimation' action. rate limits: 10/s burst, 150/m steady. required scope: `campaigns:write`. preconditions: - valid api key with campaigns:write scope - campaign id must exist and be accessible - campaign must have audience settings configured"
        },
        {
          "name": "create_event",
          "description": "Create or update a profile event with minimum identifiers and metric name. success means validation, not completion. burst limit: 350/s, steady: 3500/m. scope required: `events:write`."
        },
        {
          "name": "create_list",
          "description": "Create a new list.<br><br>*rate limits*:<br>burst: `10/s`<br>steady: `150/m`<br>daily: `100/d` **scopes:** `lists:write`"
        },
        {
          "name": "create_or_update_profile",
          "description": "Create or update a profile in klaviyo with the given attributes. this action allows you to create a new profile or update an existing one if it already exists (based on email or other identifiers). returns 201 for creation, 200 for update. empty fields are cleared with `null`; omitted fields remain unchanged. rate limits: 75/s burst, 700/m steady. required scope: `profiles:write`. preconditions: - at least one identifier (email, phone number, external id, or anonymous id) must be provided - email must be in valid format if provided - phone number must be in e.164 format if provided"
        },
        {
          "name": "create_profile",
          "description": "Create a new profile.<br><br>*rate limits*:<br>burst: `75/s`<br>steady: `700/m` **scopes:** `profiles:write`"
        },
        {
          "name": "get_campaign",
          "description": "Retrieve a specific campaign by its id from klaviyo. this action fetches detailed information about a single campaign including its name, status, audience settings, send strategy, and optionally related messages and tags. rate limits: 10/s burst, 150/m steady. required scope: `campaigns:read`. preconditions: - valid api key with campaigns:read scope - campaign id must exist and be accessible"
        },
        {
          "name": "get_campaigns",
          "description": "Retrieve campaigns from your klaviyo account. this action allows you to fetch campaigns with optional filtering and sorting. klaviyo requires specifying a channel (email or sms) to list campaigns. you can add additional filters for status, name, creation date, and other attributes. results are paginated with a default of 10 campaigns per page. rate limits: 10/s burst, 150/m steady. required scope: `campaigns:read`. preconditions: - valid api key with campaigns:read scope - channel must be specified (email or sms) - additional filter syntax must be valid if provided"
        },
        {
          "name": "get_events",
          "description": "Get all events in an account requests can be sorted by the following fields: `datetime`, `timestamp` returns a maximum of 200 events per page.<br><br>*rate limits*:<br>burst: `350/s`<br>steady: `3500/m` **scopes:** `events:read`"
        },
        {
          "name": "get_lists",
          "description": "Retrieve marketing lists from your klaviyo account. this action allows you to fetch lists with optional filtering and sorting. you can filter by name, creation date, and other attributes. results are paginated with a default of 10 lists per page. rate limits: 75/s burst, 700/m steady. required scope: `lists:read`. preconditions: - valid api key with lists:read scope - filter syntax must be valid if provided"
        },
        {
          "name": "get_profiles",
          "description": "Retrieve profiles from your klaviyo account. this action allows you to fetch profiles with optional filtering and sorting. you can filter by email, external id, creation date, and other attributes. results are paginated with a configurable page size. rate limits: 75/s burst, 700/m steady (lower with predictive analytics). required scope: `profiles:read`. preconditions: - valid api key with profiles:read scope - filter syntax must be valid if provided - page size must be between 1 and 100"
        },
        {
          "name": "update_campaign",
          "description": "Update a campaign with the specified attributes. this action allows you to modify campaign settings including name, audiences, and send strategy. only the fields you provide will be updated; others remain unchanged. rate limits: 10/s burst, 150/m steady. required scope: `campaigns:write`. preconditions: - valid api key with campaigns:write scope - campaign id must exist and be accessible - campaign must be in a state that allows updates (usually draft status) - send strategy options must match the selected method"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/klaviyo/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"klaviyo\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.KLAVIYO])",
      "metadata": {
        "totalDownloads": "170",
        "activeUsers": "27",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "klaviyo"
    },
    "browserbase_tool": {
      "name": "Browserbase tool",
      "slug": "browserbase_tool",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "browserbase_api-key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "API key for Browserbase",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": null,
                  "description": "Base URL for Browserbase",
                  "required": false
                }
              ]
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-08-20T11:35:40.894Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "A browsing app that gets a URL, reads its contents, and returns it.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//browser-base.jpeg",
        "app_url": "https://browserbase.com",
        "categories": [
          {
            "name": "Other / Miscellaneous",
            "slug": "other-/-miscellaneous"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "4ba09e6f-79ea-4f2e-a842-6cf401d5e0f1"
      },
      "actions": [
        {
          "name": "browserbase_load_tool",
          "description": "Load webpages url in a headless browser using browserbase and return the contents."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/browserbase_tool/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"browserbase_tool\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BROWSERBASE_TOOL])",
      "metadata": {
        "totalDownloads": "201",
        "activeUsers": "77",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "browserbase_tool"
    },
    "mailchimp": {
      "name": "Mailchimp",
      "slug": "mailchimp",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "mailchimp_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "dc",
                  "displayName": "Data Centre",
                  "type": "string",
                  "default": "us21",
                  "description": "The data centre for Mailchimp API requests. For more information, visit https://developers.mailchimp.com/",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{dc}}.api.mailchimp.com/3.0/"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Mailchimp is an email marketing and automation platform providing campaign templates, audience segmentation, and performance analytics to drive engagement and conversions",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/mailchimp.svg",
        "app_url": "https://mailchimp.com/",
        "categories": [
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          }
        ],
        "triggers_count": 4,
        "tools_count": 271
      },
      "deprecated": {
        "toolkitId": "f9e6c5a2-f611-4fd5-a8e1-ab6ead8e962d"
      },
      "actions": [
        {
          "name": "get_campaign_info",
          "description": "Get information about a specific campaign."
        },
        {
          "name": "get_lists_info",
          "description": "Get information about all lists in the account."
        },
        {
          "name": "list_campaigns",
          "description": "Get all campaigns in an account."
        },
        {
          "name": "list_recent_activity",
          "description": "Get up to the previous 180 days of daily detailed aggregated activity stats for a list, not including automation activity."
        },
        {
          "name": "search_members",
          "description": "Search for list members. this search can be restricted to a specific list, or can be used to search across all lists in an account."
        },
        {
          "name": "send_campaign",
          "description": "Send a mailchimp campaign. for rss campaigns, the campaign will send according to its schedule. all other campaigns will send immediately."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/mailchimp/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"mailchimp\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.MAILCHIMP])",
      "metadata": {
        "totalDownloads": "195",
        "activeUsers": "19",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "mailchimp"
    },
    "attio": {
      "name": "Attio",
      "slug": "attio",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "attio_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "task:read-write,object_configuration:read,record_permission:read,user_management:read,list_configuration:read,list_entry:read,comment:read-write",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.attio.com",
                  "description": "The base URL for Attio API requests. For more information, visit https://developers.attio.com/",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Attio is a fully customizable workspace for your team's relationships and workflows.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//attio.webp",
        "app_url": "https://attio.com",
        "categories": [
          {
            "name": "crm",
            "slug": "crm"
          }
        ],
        "triggers_count": 0,
        "tools_count": 11
      },
      "deprecated": {
        "toolkitId": "b4da1f1a-434b-4001-8c66-caa14c5cf9f6"
      },
      "actions": [
        {
          "name": "create_note",
          "description": "This tool creates a new note on a given record in attio. the note can be attached to any record type (like person, company, or deal) and includes a title and content. it requires parameters such as parent object, parent record id, title, and content, with an optional created at timestamp."
        },
        {
          "name": "create_record",
          "description": "This tool creates a new record in attio for a specified object type (people, companies, deals, etc.). it requires the object type and a values dictionary containing the attributes for the new record."
        },
        {
          "name": "delete_note",
          "description": "This tool allows users to delete a specific note in attio by its id. it is implemented via delete https://api.attio.com/v2/notes/{note id} and handles note deletion by validating the provided note id. it complements attio create note functionality, providing complete note management capabilities within the attio platform."
        },
        {
          "name": "delete_record",
          "description": "This tool allows you to delete a record from attio permanently. the deletion is irreversible, and the data will eventually be removed from the system."
        },
        {
          "name": "find_record",
          "description": "This tool allows users to find a record in attio by either its unique id or by searching using unique attributes. it provides two methods: one for directly retrieving a record by its id with the get /v2/objects/{object}/records/{record id} endpoint, and another for searching by attributes using the post /v2/objects/{object}/records/query endpoint."
        },
        {
          "name": "get_object",
          "description": "This tool retrieves detailed information about a specific object type in attio, including all its attributes and their properties. this is useful for understanding what fields are available when creating or updating records of this type."
        },
        {
          "name": "list_lists",
          "description": "This tool retrieves all lists available in the attio workspace. the lists are returned sorted as they appear in the sidebar. this tool is essential for managing and navigating lists, and is a prerequisite for many list-related operations. it requires the list configuration:read permission scope."
        },
        {
          "name": "list_notes",
          "description": "This tool lists all notes associated with a specific record in attio. notes are returned in reverse chronological order (newest first)."
        },
        {
          "name": "list_objects",
          "description": "This tool retrieves a list of all available objects (both system-defined and user-defined) in the attio workspace. it makes a get request to the /v2/objects endpoint and returns a json response containing key metadata about each object, which is fundamental for understanding and accessing the workspace's structure."
        },
        {
          "name": "list_records",
          "description": "This tool lists records from a specific object type in attio. it provides simple pagination support and returns records in the order they were created. for complex filtering, use the findrecord action instead."
        },
        {
          "name": "update_record",
          "description": "This tool updates an existing record in attio for a specified object type (people, companies, deals, etc.). it uses patch to partially update only the provided fields, leaving other fields unchanged."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/attio/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"attio\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ATTIO])",
      "metadata": {
        "totalDownloads": "222",
        "activeUsers": "44",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "attio"
    },
    "googlemeet": {
      "name": "Googlemeet",
      "slug": "googlemeet",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "googler-meet",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://www.googleapis.com/auth/meetings.space.created,https://www.googleapis.com/auth/meetings.space.settings",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://meet.googleapis.com/v2"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-29T15:58:50.917Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Google Meet is a video conferencing tool developed by Google.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google-meet.webp",
        "app_url": "https://meet.google.com/",
        "categories": [
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          }
        ],
        "triggers_count": 0,
        "tools_count": 5
      },
      "deprecated": {
        "toolkitId": "f1e03ef9-3735-40e0-864c-36d5980034cb"
      },
      "actions": [
        {
          "name": "get_conference_record_for_meet",
          "description": "Get conference record by space name, meeting code, start time, end time"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/googlemeet/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"googlemeet\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GOOGLEMEET])",
      "metadata": {
        "totalDownloads": "152",
        "activeUsers": "42",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "googlemeet"
    },
    "text_to_pdf": {
      "name": "Text to pdf",
      "slug": "text_to_pdf",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "texttopdf",
          "mode": "NO_AUTH",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://texttopdf.ddbrief.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-02-17T14:03:05.493Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Convert text to PDF",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/texttopdf.png",
        "app_url": "...",
        "categories": [
          {
            "name": "AI & Machine Learning",
            "slug": "ai-&-machine-learning"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "cbe12d37-3296-419d-8606-e9c275707a67"
      },
      "actions": [
        {
          "name": "convert_text_to_pdf",
          "description": "Convert text to pdf"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/text_to_pdf/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"text_to_pdf\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.TEXT_TO_PDF])",
      "metadata": {
        "totalDownloads": "381",
        "activeUsers": "104",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "text_to_pdf"
    },
    "zoho": {
      "name": "Zoho",
      "slug": "zoho",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "zoho_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "ZohoCRM.modules.ALL,ZohoCRM.settings.ALL,ZohoCRM.notifications.ALL,ZohoCRM.users.ALL",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "region",
                  "displayName": "Region",
                  "type": "string",
                  "default": "com",
                  "description": "The Zoho domain region (e.g., com, eu, in, cn, au).",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.zohoapis.{{region}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Zoho actions to interact with zoho CRM",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/zoho.png",
        "app_url": "https://www.zoho.com",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Sales & Customer Support",
            "slug": "sales-&-customer-support"
          },
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          }
        ],
        "triggers_count": 0,
        "tools_count": 6
      },
      "deprecated": {
        "toolkitId": "a4468da2-dec2-49c6-adf3-347bce6953d2"
      },
      "actions": [
        {
          "name": "convert_zoho_lead",
          "description": "Converts a lead into a contact, account, and optionally a deal in zoho crm."
        },
        {
          "name": "create_zoho_record",
          "description": "Creates new records in a specified module in zoho crm."
        },
        {
          "name": "create_zoho_tag",
          "description": "Creates new tags in zoho crm."
        },
        {
          "name": "get_zoho_records",
          "description": "Retrieves records from a specified module in zoho crm."
        },
        {
          "name": "update_related_records",
          "description": "Associates or updates relationships between records across different modules in zoho crm."
        },
        {
          "name": "update_zoho_record",
          "description": "Updates existing records in a specified module in zoho crm."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/zoho/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"zoho\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ZOHO])",
      "metadata": {
        "totalDownloads": "381",
        "activeUsers": "65",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "zoho"
    },
    "fireflies": {
      "name": "Fireflies",
      "slug": "fireflies",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "fireflies_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Fireflies API key for authentication. Obtain it from your Fireflies settings.",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.fireflies.ai/graphql",
                  "description": "The base url for your fireflies api",
                  "required": false
                }
              ]
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-01-24T05:38:21.223Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Fireflies.ai helps your team transcribe, summarize, search, and analyze voice conversations.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/fireflies.jpg",
        "app_url": "https://www.fireflies.ai",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 1,
        "tools_count": 10
      },
      "deprecated": {
        "toolkitId": "21a4da4d-3271-4152-8b57-4f31d5979c54"
      },
      "actions": [
        {
          "name": "add_to_live",
          "description": "The addtolive action allows you to add the fireflies.ai bot to an ongoing meeting. note: this action requires a paid fireflies plan to add bots to meetings."
        },
        {
          "name": "delete_transcript_by_id",
          "description": "The deletetranscriptbyid action is designed to delete a specific transcript by its id."
        },
        {
          "name": "fetch_ai_app_outputs",
          "description": "Fetch outputs for a specific ai app or meeting/transcript."
        },
        {
          "name": "get_bites",
          "description": "The getbites action is designed to fetch a list of bites against input arguments."
        },
        {
          "name": "get_bite_by_id",
          "description": "The getbite action is designed to fetch details associated with a specific bite id."
        },
        {
          "name": "get_transcripts",
          "description": "The gettranscripts action is designed to fetch a list of transcripts against input arguments."
        },
        {
          "name": "get_transcript_by_id",
          "description": "The gettranscriptbyid action is designed to fetch details associated with a specific transcript id. note: this action requires a paid fireflies plan to access transcript details."
        },
        {
          "name": "get_users",
          "description": "The getusers action is designed to fetch a list of all users within the team."
        },
        {
          "name": "get_user_by_id",
          "description": "The getuser action is designed to fetch details associated with a specific user id."
        },
        {
          "name": "upload_audio",
          "description": "The uploadaudio action allows you to upload audio files to fireflies.ai for transcription. note: this action requires a paid fireflies plan to upload and transcribe audio files."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/fireflies/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"fireflies\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.FIREFLIES])",
      "metadata": {
        "totalDownloads": "40",
        "activeUsers": "24",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "fireflies"
    },
    "dropbox": {
      "name": "Dropbox",
      "slug": "dropbox",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "dropbox_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "email,profile,account_info.write,account_info.read,files.metadata.write,files.metadata.read,files.content.write,files.content.read,openid,file_requests.write,file_requests.read,sharing.write,sharing.read,contacts.write,contacts.read",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.dropboxapi.com",
                  "description": "The base URL for Dropbox API requests. For more information, visit https://developers.dropbox.com/",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Dropbox is a file hosting service that offers cloud storage, file\n    synchronization, personal cloud, and client software.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/dropbox.svg",
        "app_url": "https://www.dropbox.com",
        "categories": [
          {
            "name": "Document & File Management",
            "slug": "document-&-file-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 11
      },
      "deprecated": {
        "toolkitId": "cc5392ae-bb7a-48e4-aa6b-50463acf6ecb"
      },
      "actions": [
        {
          "name": "create_file_request",
          "description": "Creates a new file request in dropbox for users to upload files to a specified folder."
        },
        {
          "name": "create_folder",
          "description": "Creates a new folder at a specified path in dropbox; requires the 'files.write' scope."
        },
        {
          "name": "create_paper",
          "description": "Creates a new dropbox paper document at the specified path using html or markdown content."
        },
        {
          "name": "delete_file_or_folder",
          "description": "Permanently deletes the file or folder at the specified path in dropbox; requires the `files.write` scope."
        },
        {
          "name": "get_about_me",
          "description": "Retrieves information about the currently authenticated dropbox account."
        },
        {
          "name": "list_files_in_folder",
          "description": "Lists files and folders in a specified dropbox folder path; paths must start with / and not end with / or whitespace, but \"\" can be used for root and \"id:...\" for folder ids."
        },
        {
          "name": "list_folders",
          "description": "Retrieves a list of folders (not files) from a specified dropbox path."
        },
        {
          "name": "move_file_or_folder",
          "description": "Moves a file or folder to a new location in the user's dropbox, requiring 'files.write' scope."
        },
        {
          "name": "read_file",
          "description": "Downloads a file from the specified dropbox path, requiring `files.content.read` scope."
        },
        {
          "name": "search_file_or_folder",
          "description": "Searches dropbox for files or folders by a query string within a specified path, with options for filename-only search and result highlighting."
        },
        {
          "name": "upload_file",
          "description": "Uploads a file to a specified path in the user's dropbox, with options for handling existing files."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/dropbox/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"dropbox\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.DROPBOX])",
      "metadata": {
        "totalDownloads": "61",
        "activeUsers": "11",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "dropbox"
    },
    "shortcut": {
      "name": "Shortcut",
      "slug": "shortcut",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "shortcut_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.app.shortcut.com",
                  "description": "The base URL for Amplitude API requests.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Token",
                  "type": "string",
                  "default": null,
                  "description": "Your Shortcut API token for authentication.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Shortcut aligns product development work with company objectives so teams can execute with a shared purpose.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//shortcut.svg",
        "app_url": "https://www.shortcut.com",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 122
      },
      "deprecated": {
        "toolkitId": "a7ba92fa-773d-4be2-94c6-2d53ec9078fe"
      },
      "actions": [
        {
          "name": "list_categories",
          "description": "List categories returns a list of all categories and their attributes."
        },
        {
          "name": "list_epics",
          "description": "List epics returns a list of all epics and their attributes."
        },
        {
          "name": "list_milestones",
          "description": "(deprecated: use 'list objectives') list milestones returns a list of all milestones and their attributes."
        },
        {
          "name": "list_objectives",
          "description": "List objectives returns a list of all objectives and their attributes."
        },
        {
          "name": "search_objectives",
          "description": "Search objectives lets you search objectives based on desired parameters. since ordering of results can change over time (due to search ranking decay, new objectives being created), the `next` value from the previous response can be used as the path and query string for the next page to ensure stable ordering."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/shortcut/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"shortcut\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SHORTCUT])",
      "metadata": {
        "totalDownloads": "25",
        "activeUsers": "8",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "shortcut"
    },
    "freshdesk": {
      "name": "Freshdesk",
      "slug": "freshdesk",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "basic_auth",
          "mode": "BASIC",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "password",
                  "displayName": "Password",
                  "type": "string",
                  "description": "Password for basic auth",
                  "required": true
                },
                {
                  "name": "subdomain",
                  "displayName": "Subdomain",
                  "type": "string",
                  "default": null,
                  "description": "The subdomain of your Freshdesk account.",
                  "required": true
                },
                {
                  "name": "username",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "API Key for authentication",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{subdomain}}.freshdesk.com/api/v2"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "A customer support platform that provides helpdesk support with all\n    smart automations to get things done faster.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/freshdesk.svg",
        "app_url": "https://www.freshworks.com/",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Sales & Customer Support",
            "slug": "sales-&-customer-support"
          }
        ],
        "triggers_count": 0,
        "tools_count": 7
      },
      "deprecated": {
        "toolkitId": "08ef9d31-0436-48dd-b329-c609cb23b210"
      },
      "actions": [
        {
          "name": "create_ticket",
          "description": "Creates a new ticket in freshdesk."
        },
        {
          "name": "delete_ticket",
          "description": "Deletes an existing ticket in freshdesk."
        },
        {
          "name": "get_tickets",
          "description": "Retrieves a list of tickets from freshdesk."
        },
        {
          "name": "list_all_tickets",
          "description": "Lists all tickets in freshdesk."
        },
        {
          "name": "reply_ticket",
          "description": "Replies to an existing ticket in freshdesk."
        },
        {
          "name": "update_ticket",
          "description": "Updates an existing ticket in freshdesk."
        },
        {
          "name": "view_ticket",
          "description": "Views an existing ticket in freshdesk."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/freshdesk/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"freshdesk\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.FRESHDESK])",
      "metadata": {
        "totalDownloads": "73",
        "activeUsers": "20",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "freshdesk"
    },
    "borneo": {
      "name": "Borneo",
      "slug": "borneo",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "borneo_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "openid,email,profile,phone,aws.cognito.signin.user.admin",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "borneo_dashboard_url",
                  "displayName": "Borneo Dashboard URL",
                  "type": "string",
                  "default": null,
                  "description": "Provide your Borneo Dashboard URL for authentication. Obtain it from your Borneo dashboard.",
                  "required": true
                },
                {
                  "name": "cognito_domain",
                  "displayName": "Cognito Domain",
                  "type": "string",
                  "default": null,
                  "description": "Provide your Cognito Domain for authentication. Obtain it from your Borneo dashboard.",
                  "required": true
                },
                {
                  "name": "region",
                  "displayName": "Region",
                  "type": "string",
                  "default": null,
                  "description": "Provide your region for authentication. Obtain it from your Borneo dashboard.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{borneo_dashboard_url}}/api"
          }
        },
        {
          "name": "borneo_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Bearer Token",
                  "type": "string",
                  "default": null,
                  "description": "Provide your Borneo API bearer token for authentication. Obtain it from your Borneo dashboard.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://demo2.app.borneodata.com/api"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-01-27T08:08:40.874Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Borneo is a data security and privacy platform designed for sensitive data discovery and remediation.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/borneo.jpeg",
        "app_url": "https://www.borneo.com",
        "categories": [
          {
            "name": "Security & Compliance",
            "slug": "security-&-compliance"
          }
        ],
        "triggers_count": 0,
        "tools_count": 154
      },
      "deprecated": {
        "toolkitId": "0e678045-1905-481c-bbba-264023e46194"
      },
      "actions": [
        {
          "name": "create_new_asset",
          "description": "Creates a new asset in the borneo integration platform. this endpoint allows users to add various types of assets to their inventory, ranging from hardware and software applications to office furniture and documentation. it's primarily used when onboarding new resources or updating the asset registry. the endpoint captures essential information about each asset, including its type, location, and associated identifiers. it's particularly useful for organizations managing diverse asset portfolios across multiple locations. note that while creating an asset, only the name and type are required, allowing for flexible asset management workflows."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/borneo/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"borneo\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BORNEO])",
      "metadata": {
        "totalDownloads": "12",
        "activeUsers": "1",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "borneo"
    },
    "mixpanel": {
      "name": "Mixpanel",
      "slug": "mixpanel",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "mixpanel_basic",
          "mode": "BASIC",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "username",
                  "displayName": "Service Account Username",
                  "type": "string",
                  "default": null,
                  "description": "The service account username for your Mixpanel account.",
                  "required": true
                },
                {
                  "name": "password",
                  "displayName": "Service Account Secret",
                  "type": "string",
                  "default": null,
                  "description": "The service account secret for your Mixpanel account.",
                  "required": true
                },
                {
                  "name": "region",
                  "displayName": "Region",
                  "type": "string",
                  "default": null,
                  "description": "The region of your Mixpanel account. example - in, eu, us - leave blank for default",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{region}}.mixpanel.com/api"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Mixpanel is a product analytics platform tracking user interactions and engagement, providing cohort analysis, funnels, and A/B testing to improve user experiences",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/mixpanel.svg",
        "app_url": "https://mixpanel.com/",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 21
      },
      "deprecated": {
        "toolkitId": "60ed6c40-46d5-4cd8-8433-c2895fc3fffa"
      },
      "actions": [
        {
          "name": "aggregate_event_counts",
          "description": "Get aggregate event counts over time. supports different types of aggregation: general, unique, average, sum."
        },
        {
          "name": "get_all_projects",
          "description": "Get all projects associated with the authenticated mixpanel account. returns project details including name, permissions, role, domain, and other configuration details."
        },
        {
          "name": "jql_query",
          "description": "Execute a custom jql (javascript query language) query against mixpanel's query api. key constraints: - 60 queries/hour, max 5 concurrent queries. - 2-minute execution timeout. - 5 gb data processing limit, 2 gb output limit. - no remote network requests (xmlhttprequest) are allowed inside the jql script."
        },
        {
          "name": "list_cohorts",
          "description": "Get list of all cohorts in a mixpanel project. returns cohort details including name, id, count, description, creation date, and visibility. the query api has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries."
        },
        {
          "name": "list_funnels",
          "description": "Get the names and funnel ids of your funnels. the query api has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries."
        },
        {
          "name": "profile_event_activity",
          "description": "Get event activity feed for specified users from mixpanel query api. the query api has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries."
        },
        {
          "name": "query_funnel",
          "description": "Get data for a funnel. the query api has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries."
        },
        {
          "name": "query_insight",
          "description": "Get data from your insights reports. the query api has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries."
        },
        {
          "name": "query_profiles",
          "description": "Query user or group profile data from mixpanel. returns list of profiles that match specified parameters. the query api has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries."
        },
        {
          "name": "query_retention_report",
          "description": "Get cohort analysis data. the query api has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries."
        },
        {
          "name": "query_segmentation",
          "description": "Get data for an event, segmented and filtered by properties. the query api has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/mixpanel/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"mixpanel\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.MIXPANEL])",
      "metadata": {
        "totalDownloads": "233",
        "activeUsers": "34",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "mixpanel"
    },
    "coda": {
      "name": "Coda",
      "slug": "coda",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "API_KEY",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Koda API key for authentication",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://coda.io/apis/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-02-23T09:38:30.923Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Collaborative workspace platform that transforms documents into powerful tools for team productivity and project management",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/coda.png",
        "app_url": "https://coda.io/",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 4,
        "tools_count": 101
      },
      "deprecated": {
        "toolkitId": "1f3d0caf-8c64-4c70-992e-781f81198aa9"
      },
      "actions": [
        {
          "name": "copy_doc",
          "description": "Creates a copy of an existing coda document. this action allows you to duplicate a document while optionally specifying a new title and location for the copied document."
        },
        {
          "name": "list_the_pack_listings_accessible_to_a_user",
          "description": "Get listings of public packs and packs created by you."
        },
        {
          "name": "search_docs",
          "description": "This tool allows users to search for coda documents based on a query term. it searches within document titles and metadata, providing results with document id, name, type, owner details, timestamps, workspace info, and folder path if available. it supports pagination through the 'pagetoken' parameter and accepts a 'limit' parameter to control the number of returned results."
        },
        {
          "name": "search_row",
          "description": "Action to search for rows in a coda table based on specific criteria."
        },
        {
          "name": "upsert_rows",
          "description": "This tool allows you to insert new rows into a coda table or update existing ones based on specified key columns. this is particularly useful for synchronizing data or ensuring records are up-to-date without creating duplicates."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/coda/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"coda\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CODA])",
      "metadata": {
        "totalDownloads": "78",
        "activeUsers": "23",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "coda"
    },
    "acculynx": {
      "name": "Acculynx",
      "slug": "acculynx",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "api_key_auth",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your acculynx API key for authentication. Obtain it from your acculynx settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.acculynx.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-02-28T11:36:05.099Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Using the AccuLynx API, data can be seamlessly exchanged between AccuLynx and other applications for greater efficiency and productivity.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/acculynx.jpeg",
        "app_url": "https://acculynx.com",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          }
        ],
        "triggers_count": 0,
        "tools_count": 8
      },
      "deprecated": {
        "toolkitId": "78d406a3-779b-4ae2-82c1-455f24324f3b"
      },
      "actions": [
        {
          "name": "add_job_appointment",
          "description": "This endpoint allows users to schedule the initial appointment for a specific job in the acculynx system. it is used to set up the first meeting or site visit for a construction or roofing project. the endpoint requires the job id, start date and time, and end date and time for the appointment. this is crucial for initiating the project workflow and ensuring that all parties involved are aware of the scheduled time for the first interaction. the appointment details are set in the context of the company's timezone unless otherwise specified. use this endpoint when a new job has been created and the first appointment needs to be scheduled with the client or at the job site."
        },
        {
          "name": "create_a_contact",
          "description": "Creates a new contact in the acculynx system with detailed information for use in roofing and construction project management. this endpoint allows for the addition of comprehensive contact details including personal information, company affiliation, communication preferences, and address information. it's particularly useful for adding new customers, leads, vendors, or any other type of contact relevant to construction projects. the endpoint provides flexibility in the amount of information that can be added, with only the contact type being required. use this when you need to add a new contact to your acculynx database or update your system with new lead information. note that while many fields are optional, providing as much information as possible will enhance the usefulness of the contact record for future project management and communication purposes."
        },
        {
          "name": "create_a_job",
          "description": "Creates a new job in the acculynx system with the provided details. this endpoint allows you to initialize a job with essential information such as the associated contact, location, job category, work type, priority, and trade types. it's particularly useful for setting up new projects or tasks within the acculynx platform for the roofing and construction industries. the endpoint requires at minimum a contact id and location address, with several optional fields to further customize the job entry. use this when you need to programmatically create new jobs in acculynx, such as when integrating with other systems or automating job creation processes."
        },
        {
          "name": "create_a_lead",
          "description": "This endpoint creates a new lead in the acculynx system, specifically for residential roofing projects. it should be used when a new potential customer expresses interest in roofing services or when importing lead data from external sources. the endpoint captures essential contact information to initiate the lead management process. while it creates the lead, it does not assign priorities or sales representatives; these actions would need to be performed separately. the endpoint is designed for simplicity and quick lead entry, focusing on the most crucial identifying information."
        },
        {
          "name": "job_appointment_summary",
          "description": "Retrieves a list of appointments from the calendar associated with a specific job in acculynx. this endpoint is used to fetch scheduled events, such as site visits, inspections, or project milestones, for a particular roofing or construction job. it provides valuable information for project management and scheduling purposes. the endpoint should be used when you need to view or manage the timeline of events for a specific job. it will not provide general calendar information or appointments unrelated to the specified job id. the response likely includes details such as appointment dates, times, descriptions, and associated team members, though the exact structure is not specified in the given schema."
        },
        {
          "name": "list_of_calendars_for_the_location",
          "description": "Retrieves a list of calendars associated with the authenticated user or organization in acculynx. this endpoint provides access to the calendar data, which is crucial for scheduling and organizing tasks in the roofing and construction project management context. it should be used when you need to obtain an overview of all available calendars or to gather calendar ids for use in other api operations. the endpoint returns basic information about each calendar, likely including identifiers, names, and possibly associated metadata. it does not modify any calendar data and is intended for read-only operations. keep in mind that the response may be paginated for large datasets, and additional parameters might be available for filtering or sorting the results, although they are not specified in the current schema."
        },
        {
          "name": "list_of_contact_types_related_to_the_company",
          "description": "Retrieves a list of all available contact types in the acculynx system. this endpoint is used to fetch the predefined categories or classifications for contacts, such as residential, repair, property management, and other job categories. it's essential for organizing and filtering contact information within the acculynx platform. the endpoint should be used when setting up new contacts, updating existing ones, or when needing to populate dropdown menus or filter options in the user interface. it does not create, modify, or delete contact types; it only provides the current list of available options. the response will likely include unique identifiers and names for each contact type, allowing for easy integration with other parts of the acculynx api or external systems."
        },
        {
          "name": "update_company_representative",
          "description": "This endpoint allows you to add a company representative to a specific job within the acculynx system. it is used when you need to associate a representative with a particular project or task. the endpoint requires the job's unique identifier and the representative's id to establish the connection. this operation is useful for assigning personnel to projects, tracking responsibilities, and maintaining accurate job records. it's important to note that this endpoint only adds the association and doesn't create new representative or job entries."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/acculynx/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"acculynx\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ACCULYNX])",
      "metadata": {
        "totalDownloads": "23",
        "activeUsers": "8",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "acculynx"
    },
    "ahrefs": {
      "name": "Ahrefs",
      "slug": "ahrefs",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "ahrefs_apikey",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "apiKey",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "You can crete your api key form account/api-keys in settings of your account. For more information check the docs https://docs.ahrefs.com/docs/api/reference/api-keys-creation-and-management",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://ahrefs.com/v3"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-12-12T12:19:09.017Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Ahrefs is an SEO and marketing platform offering site audits, keyword research, content analysis, and competitive insights to improve search rankings and drive organic traffic",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/ahrefs.png",
        "app_url": "https://ahrefs.com/",
        "categories": [
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          }
        ],
        "triggers_count": 0,
        "tools_count": 40
      },
      "deprecated": {
        "toolkitId": "cf8c5d4b-69e6-4de6-ba71-409d1a1561d1"
      },
      "actions": [
        {
          "name": "backlinks_stats_retrieval",
          "description": "Retrieves comprehensive backlink statistics for a specified website or url using ahrefs' site explorer tool. this endpoint provides crucial data for seo analysis, including the total number of backlinks, referring domains, and potentially the domain rating (dr). it's essential for understanding a site's link profile, assessing its seo performance, and conducting competitive analysis. the tool is particularly useful when users need detailed insights into a website's backlink structure or when comparing the backlink profiles of multiple domains. note that the data returned is based on ahrefs' extensive web crawl and may not include very recent backlinks."
        },
        {
          "name": "fetch_all_backlinks",
          "description": "Retrieves a comprehensive list of backlinks for a specified website or url using ahrefs' site explorer tool. this endpoint provides detailed information about the backlink profile of the target, including the source urls, link attributes, and potentially other seo metrics like domain rating (dr) or url rating (ur) of the linking pages. it's particularly useful for analyzing a website's link-building efforts, identifying potential link-building opportunities, and assessing the overall health of a site's backlink profile. the endpoint can handle large-scale backlink data, making it suitable for in-depth seo analysis and competitive research. however, users should be aware that for websites with a substantial number of backlinks, multiple api calls or pagination may be necessary to retrieve the complete dataset."
        },
        {
          "name": "fetch_competitors_overview",
          "description": "Retrieves a comprehensive overview of competitor data in relation to keyword rankings and organic search performance. this endpoint is part of ahrefs' rank tracker feature and provides a comparative analysis of your website against multiple competitors. it offers insights into keyword positions, traffic share, and serp features across all tracked keywords. use this endpoint when you need a high-level view of your seo performance relative to your competitors. the data returned helps identify ranking opportunities, track your market share in organic search, and understand how you stack up against your competition in terms of visibility and traffic. note that this endpoint may have limitations on the number of competitors it compares against and the historical data range available."
        },
        {
          "name": "fetch_rank_tracker_overview",
          "description": "The getranktrackeroverview endpoint retrieves a comprehensive summary of keyword rankings and seo performance data from ahrefs' rank tracker tool. it provides a high-level overview of a website's ranking positions, serp features, and performance against competitors across multiple search engines and countries. this endpoint is ideal for quickly assessing the overall seo health and progress of a website without delving into specific keyword details. it should be used when you need a snapshot of your seo performance or to track changes in your overall ranking landscape over time. note that while this overview gives a broad picture, it may not include in-depth data for individual keywords or specific serp features."
        },
        {
          "name": "get_serp_overview",
          "description": "Retrieves a comprehensive overview of search engine results pages (serp) data for specified keywords or queries. this endpoint provides valuable insights into search performance, including historical data, search intent analysis, and detailed metrics for each keyword. it's particularly useful for seo professionals and digital marketers looking to optimize their content strategy and improve their website's search engine visibility. the serp overview can help identify trends, analyze competition, and inform content creation efforts based on real search data. note that while this endpoint offers a wealth of information, it may not provide real-time data and should be used for strategic planning rather than immediate tactical decisions."
        },
        {
          "name": "retrieve_anchor_data",
          "description": "Retrieves anchor text data for a specified website or url using ahrefs' site explorer tool. this endpoint provides valuable insights into the anchor text distribution of backlinks pointing to the target url or domain. it helps seo professionals analyze the quality and diversity of anchor texts, which can influence search engine rankings. use this endpoint when you need to understand how other websites are linking to a specific page or domain, and to identify potential opportunities for link building or anchor text optimization. the tool does not provide information about the linking pages themselves, focusing solely on the anchor text data."
        },
        {
          "name": "retrieve_crawler_ip_ranges",
          "description": "Retrieves the list of ip address ranges used by ahrefs' web crawler (ahrefsbot). this endpoint provides essential information for website administrators to identify and potentially whitelist ahrefs' crawler traffic. use this endpoint when you need to configure your server's firewall rules, analyze server logs, or verify the authenticity of crawler requests claiming to be from ahrefs. the returned data includes the current set of ip ranges, which may change over time, so it's recommended to check this endpoint periodically for updates. note that while this information helps in identifying ahrefs' crawler, it should not be used as the sole method of authentication for the crawler."
        },
        {
          "name": "retrieve_outlinks_stats",
          "description": "Retrieves comprehensive statistics about outgoing links (outlinks) from a specified website using ahrefs' site explorer tool. this endpoint provides valuable insights into a website's external linking practices, which is crucial for seo analysis and understanding a site's overall link profile. use this tool to gather data on the number of outlinks, the diversity of linked domains, and the distribution of follow vs. nofollow links. it's particularly useful for competitive analysis, identifying potential link-building opportunities, and assessing a site's overall linking strategy. note that this endpoint focuses solely on outgoing links and does not provide information about backlinks or internal links."
        },
        {
          "name": "retrieve_site_explorer_keywords_history",
          "description": "Retrieves historical keyword performance data for a specified website or domain using ahrefs' site explorer. this endpoint provides insights into how keywords have performed over time, including changes in rankings, search volume, and potential traffic. it's particularly useful for analyzing seo trends, understanding the impact of optimization efforts, and identifying seasonal patterns in keyword performance. the tool should be used when you need a comprehensive view of a website's keyword history to inform seo strategies and content planning. it does not provide real-time data and may have limitations on the historical range available."
        },
        {
          "name": "search_suggestions_explorer",
          "description": "Retrieves search suggestions for a given keyword or phrase using ahrefs' keywords explorer tool. this endpoint provides autocomplete-style suggestions that can help uncover related keywords, long-tail variations, and potential content ideas based on real search data. it's particularly useful for expanding keyword lists, finding low-competition keywords, and understanding user search intent. the suggestions returned may include both informational and transactional keywords, offering insights into various stages of the user journey. this tool should be used when conducting keyword research, planning content strategies, or optimizing for search engine visibility. it does not provide detailed metrics like search volume or keyword difficulty; for such data, additional api calls may be necessary."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/ahrefs/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"ahrefs\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.AHREFS])",
      "metadata": {
        "totalDownloads": "160",
        "activeUsers": "44",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "ahrefs"
    },
    "affinity": {
      "name": "Affinity",
      "slug": "affinity",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "affinity_apikey",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "apiKey",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "You can find your API key in your  settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.affinity.co"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-10-28T15:07:51.346Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Affinity helps private capital investors to find, manage, and close more deals",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/affinity.jpeg",
        "app_url": "https://www.affinity.co/",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          }
        ],
        "triggers_count": 0,
        "tools_count": 20
      },
      "deprecated": {
        "toolkitId": "3a7d2dc7-c58c-4491-be84-f64b1ff498a8"
      },
      "actions": [
        {
          "name": "get_all_companies",
          "description": "Affinity api allows paginated access to company info and custom fields. use `fieldids` or `fieldtypes` to specify data in a request. retrieve field ids/types via get `/v2/companies/fields`. export permission needed."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/affinity/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"affinity\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.AFFINITY])",
      "metadata": {
        "totalDownloads": "209",
        "activeUsers": "22",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "affinity"
    },
    "amplitude": {
      "name": "Amplitude",
      "slug": "amplitude",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "basic_auth",
          "mode": "BASIC",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "username",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Amplitude API Key for your project",
                  "required": true
                },
                {
                  "name": "password",
                  "displayName": "API Secret",
                  "type": "string",
                  "default": null,
                  "description": "Your Amplitude API Secret for your project",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.amplitude.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Amplitude Inc. is an American publicly trading company that develops digital analytics software.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//amplitude.svg",
        "app_url": "https://amplitude.com/",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 16
      },
      "deprecated": {
        "toolkitId": "209a9023-d019-4cce-8a96-0c93c2fdff7e"
      },
      "actions": [
        {
          "name": "check_cohort_status",
          "description": "Check the status of a cohort export request. this action allows you to: - poll the status of an in-progress cohort download request - determine if a cohort is ready for download"
        },
        {
          "name": "get_cohort",
          "description": "Get a single cohort by id and initiate download. this action allows you to: - request a specific cohort from amplitude - optionally include user properties in the response - start the asynchronous download process key features: - supports filtering by specific user properties - returns a request id used for polling status and downloading - supports eu data residency"
        },
        {
          "name": "identify",
          "description": "Update user properties using amplitude's identify api. this action allows you to: - set or update the user id for a device id - update user properties without sending an event - perform operations on user properties (set, append, etc.) - update user attributes like device info and location"
        },
        {
          "name": "list_cohorts",
          "description": "List all discoverable cohorts for an amplitude project. this action allows you to: - get a list of all cohorts in your amplitude project - optionally include sync information for each cohort key features: - returns cohort details including id, name, size, and definition - optionally includes sync metadata for integration with other tools - supports eu data residency"
        },
        {
          "name": "send_events",
          "description": "Send events to amplitude using the http v2 api. this action allows you to send events to amplitude for tracking user behavior and analytics. it supports all amplitude event fields, handles proper validation, and includes comprehensive error handling."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/amplitude/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"amplitude\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.AMPLITUDE])",
      "metadata": {
        "totalDownloads": "85",
        "activeUsers": "8",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "amplitude"
    },
    "heygen": {
      "name": "Heygen",
      "slug": "heygen",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "heygen_apikey",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "apiKey",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "You can find your API key in your  settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.heygen.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-10-25T11:38:55.420Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "HeyGen is an innovative video platform that harnesses the power of generative AI to streamline your video creation process",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/heygen.jpg",
        "app_url": "https://www.heygen.com",
        "categories": [
          {
            "name": "AI-Video",
            "slug": "ai-video"
          }
        ],
        "triggers_count": 0,
        "tools_count": 35
      },
      "deprecated": {
        "toolkitId": "c44ebf73-1fbc-49f0-87ec-29e6532e0ba1"
      },
      "actions": [
        {
          "name": "v2_templates",
          "description": "Retrieves a list of available avatar templates from the heygen platform. this endpoint allows users to access pre-designed avatars that can be used for creating professional-looking videos. it's particularly useful when you need to browse or select from heygen's library of realistic avatars for your video projects. the endpoint returns template information, which likely includes details such as template ids, names, preview images, and customization options. use this endpoint when you want to display available avatar options to users or when you need to select a template for video generation."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/heygen/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"heygen\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.HEYGEN])",
      "metadata": {
        "totalDownloads": "108",
        "activeUsers": "36",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "heygen"
    },
    "agencyzoom": {
      "name": "Agencyzoom",
      "slug": "agencyzoom",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "agencyzoom_jwt_auth_scheme",
          "mode": "BASIC_WITH_JWT",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "username",
                  "displayName": "Username",
                  "type": "string",
                  "description": "Username for basic auth with JWT",
                  "required": true
                },
                {
                  "name": "password",
                  "displayName": "Password",
                  "type": "string",
                  "description": "Password for basic auth with JWT",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.agencyzoom.com"
          }
        },
        {
          "name": "agencyzoom_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "JWT_TOKEN",
                  "displayName": "JWT Token",
                  "type": "string",
                  "default": null,
                  "description": "To obtain your JWT token, follow these steps: 1. Open Postman or any API testing tool. 2. Make a POST request to https://api.agencyzoom.com/v1/api/auth/login. 3. In the request body, add your username and password as key-value pairs. 4. After successfully making the request, you will receive a JWT token in the response. 5. Copy this JWT token and paste it here.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.agencyzoom.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-10-10T17:11:04.359Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "AgencyZoom is for the P&C insurance agent that's looking to increase sales, boost retention and analyze agency & producer performance.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/agencyzoom_logo.jpeg",
        "app_url": "https://www.agencyzoom.com/",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          }
        ],
        "triggers_count": 0,
        "tools_count": 99
      },
      "deprecated": {
        "toolkitId": "00713f33-254f-4d60-a152-6875aa4513db"
      },
      "actions": [
        {
          "name": "get_a_list_of_producer",
          "description": "Retrieves a list of all producers from agencyzoom, typically related to text thread functionalities."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/agencyzoom/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"agencyzoom\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.AGENCYZOOM])",
      "metadata": {
        "totalDownloads": "19",
        "activeUsers": "2",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "agencyzoom"
    },
    "googlebigquery": {
      "name": "Googlebigquery",
      "slug": "googlebigquery",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "googlebigquery_service_account",
          "mode": "GOOGLE_SERVICE_ACCOUNT",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "credentials_json",
                  "displayName": "Credentials JSON",
                  "type": "string",
                  "description": "Credentials JSON object for authentication",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://bigquery.googleapis.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-08T20:44:45.269Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Connect to BigQuery to query BigData.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/googl-bigquery.svg",
        "app_url": "https://cloud.google.com/bigquery",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "2d62591a-3cf0-4f36-afdb-d4313c1c222e"
      },
      "actions": [
        {
          "name": "query",
          "description": "Query tool will run a sql query in bigquery. note: make sure the query being input in a single line format. for example, select * from sample dataset.sample table where column name = 'value'"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/googlebigquery/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"googlebigquery\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GOOGLEBIGQUERY])",
      "metadata": {
        "totalDownloads": "60",
        "activeUsers": "28",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "googlebigquery"
    },
    "microsoft_clarity": {
      "name": "Microsoft clarity",
      "slug": "microsoft_clarity",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "microsoft-clarity_bearer",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "API Token",
                  "type": "string",
                  "default": null,
                  "description": "The API token for accessing Microsoft Clarity Data Export API. Generate it from the Clarity project settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.clarity.ms"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-10-28T15:07:51.346Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Microsoft Clarity is a free, easy-to-use tool that captures how real\n    people actually use your site.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//microsoft-clarity-logo.jpeg",
        "app_url": "https://clarity.microsoft.com",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "e24651d0-e093-4e4d-8b4c-57bfb1e5bd49"
      },
      "actions": [
        {
          "name": "data_export",
          "description": "Export data from microsoft clarity."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/microsoft_clarity/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"microsoft_clarity\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.MICROSOFT_CLARITY])",
      "metadata": {
        "totalDownloads": "65",
        "activeUsers": "32",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "microsoft_clarity"
    },
    "coinbase": {
      "name": "Coinbase",
      "slug": "coinbase",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "coinbase_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key Name",
                  "type": "string",
                  "default": null,
                  "description": "Your Coinbase API key name.",
                  "required": true
                },
                {
                  "name": "api_secret",
                  "displayName": "api key private key",
                  "type": "string",
                  "default": null,
                  "description": "Your Coinbase API private key.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.coinbase.com/v2"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-01-17T08:41:43.231Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Coinbase provides APIs for cryptocurrency trading and management.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/coinbase.svg",
        "app_url": "https://www.coinbase.com/en-in",
        "categories": [
          {
            "name": "Cryptocurrency",
            "slug": "cryptocurrency"
          }
        ],
        "triggers_count": 0,
        "tools_count": 6
      },
      "deprecated": {
        "toolkitId": "c77d5b97-b61d-4ae3-a1eb-25e9c56cf3ad"
      },
      "actions": [
        {
          "name": "check_transfer",
          "description": "Action to retrieve a transfer by wallet id, address id, and transfer id using the cdp sdk get transfer(...) endpoint."
        },
        {
          "name": "coinbase_faucet",
          "description": "Requests testnet funds (e.g. eth, usdc) for a given wallet using the cdp sdk. note: this only works on test networks that support a faucet (e.g. base sepolia)."
        },
        {
          "name": "create_wallet",
          "description": "Create a new wallet in coinbase, optionally using server signing (custodial / 2-of-2 mpc)."
        },
        {
          "name": "get_wallet_info",
          "description": "Retrieve detailed information about a single wallet from coinbase via the cdp sdk."
        },
        {
          "name": "list_wallets",
          "description": "Retrieve all wallets from coinbase via the cdp sdk."
        },
        {
          "name": "send_tokens",
          "description": "Sends tokens from one cdp wallet to another or to an external address using the cdp sdk. this action supports both internal transfers between cdp wallets and external transfers to blockchain addresses. it handles gasless transfers for supported assets and optional batching for optimized processing."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/coinbase/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"coinbase\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.COINBASE])",
      "metadata": {
        "totalDownloads": "170",
        "activeUsers": "31",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "coinbase"
    },
    "monday": {
      "name": "Monday",
      "slug": "monday",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "monday_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.monday.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Monday is a cloud-based work operating system where teams create\n    workflow apps in minutes to run their processes, projects, and\n    everyday work.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//monday.png",
        "app_url": "https://monday.com/",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 21
      },
      "deprecated": {
        "toolkitId": "188ff974-cf3c-4d7e-bad0-e064faa9c1ca"
      },
      "actions": [
        {
          "name": "add_users_to_board",
          "description": "Adds users to a monday.com board with a specified role."
        },
        {
          "name": "change_simple_column_value",
          "description": "Changes a specific column's value for a monday.com item using a simple string, suitable for text, status, or dropdown columns; can create new labels if `create labels if missing` is true for status/dropdown columns."
        },
        {
          "name": "create_board",
          "description": "Creates a monday.com board; `template id` if used must be accessible, and `folder id` must be in `workspace id` if both are provided."
        },
        {
          "name": "create_column",
          "description": "Creates a new column with a specified type and title on a monday.com board."
        },
        {
          "name": "create_item",
          "description": "Creates a new item on a monday.com board, optionally assigning it to a group and setting column values."
        },
        {
          "name": "list_boards",
          "description": "Retrieves a list of boards from a monday.com account, supporting pagination and filtering by state."
        },
        {
          "name": "list_board_items",
          "description": "Retrieves id, name, and state for all items on a specified monday.com board."
        },
        {
          "name": "list_users",
          "description": "Retrieves a list of users from monday.com; an empty user list in the response 'data' field does not signify action failure."
        },
        {
          "name": "move_item_to_group",
          "description": "Moves an item to a different group on the same monday.com board; the item and group must exist."
        },
        {
          "name": "update_board",
          "description": "Updates a specified attribute of an existing board on monday.com."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/monday/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"monday\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.MONDAY])",
      "metadata": {
        "totalDownloads": "59",
        "activeUsers": "21",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "monday"
    },
    "semanticscholar": {
      "name": "Semanticscholar",
      "slug": "semanticscholar",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "API_KEY",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "API key for the Semanticscholar API",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.semanticscholar.org/graph/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-02-04T08:41:16.376Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Semantic Scholar is an AI-powered academic search engine that helps researchers discover and understand scientific literature",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/semanticscholar.png",
        "app_url": "https://www.semanticscholar.org",
        "categories": [
          {
            "name": "AI & Machine Learning",
            "slug": "ai-&-machine-learning"
          }
        ],
        "triggers_count": 0,
        "tools_count": 14
      },
      "deprecated": {
        "toolkitId": "034506f4-b8ce-422a-a831-e2e0e8563fed"
      },
      "actions": [
        {
          "name": "details_about_an_author",
          "description": "Examples: <ul> <li><code>https://api.semanticscholar.org/graph/v1/author/1741101</code></li> <ul> <li>returns the author's authorid and name.</li> </ul> <li><code>https://api.semanticscholar.org/graph/v1/author/1741101?fields=url,papers</code></li> <ul> <li>returns the author's authorid, url, and list of papers. </li> <li>each paper has its paperid plus its title.</li> </ul> <li><code>https://api.semanticscholar.org/graph/v1/author/1741101?fields=url,papers.abstract,papers.authors</code></li> <ul> <li>returns the author's authorid, url, and list of papers. </li> <li>each paper has its paperid, abstract, and list of authors.</li> <li>in that list of authors, each author has their authorid and name.</li> </ul> <br> limitations: <ul> <li>can only return up to 10 mb of data at a time.</li> </ul> </ul>"
        },
        {
          "name": "details_about_an_author_s_papers",
          "description": "Retrieves a list of papers authored by a specific researcher identified by their unique semantic scholar author id. this endpoint is particularly useful for conducting literature reviews, analyzing an author's body of work, or tracking a researcher's publications over time. it provides a comprehensive view of an author's contributions to their field of study. the endpoint returns only the papers associated with the specified author and does not include co-authored works where the specified author is not listed as a primary author. note that the response may be paginated for authors with a large number of publications, and additional api calls might be necessary to retrieve the complete list of papers."
        },
        {
          "name": "details_about_a_paper",
          "description": "Examples: <ul> <li><code>https://api.semanticscholar.org/graph/v1/paper/649def34f8be52c8b66281af98ae884c09aef38b</code></li> <ul> <li>returns a paper with its paperid and title. </li> </ul> <li><code>https://api.semanticscholar.org/graph/v1/paper/649def34f8be52c8b66281af98ae884c09aef38b?fields=url,year,authors</code></li> <ul> <li>returns the paper's paperid, url, year, and list of authors. </li> <li>each author has authorid and name.</li> </ul> <li><code>https://api.semanticscholar.org/graph/v1/paper/649def34f8be52c8b66281af98ae884c09aef38b?fields=citations.authors</code></li> <ul> <li>returns the paper's paperid and list of citations. </li> <li>each citation has its paperid plus its list of authors.</li> <li>each author has their 2 always included fields of authorid and name.</li> </ul> <br> limitations: <ul> <li>can only return up to 10 mb of data at a time.</li> </ul> </ul>"
        },
        {
          "name": "details_about_a_paper_s_authors",
          "description": "Retrieves the list of authors for a specific paper identified by its unique paper id in the semantic scholar database. this endpoint is useful when you need detailed information about the contributors to a particular academic publication. it provides access to the author data associated with the paper, which may include names, affiliations, and potentially other metadata. this tool should be used when users require author information for a known paper, such as when exploring collaborations or tracking an author's body of work. it does not provide the full paper content or other paper metadata beyond author information."
        },
        {
          "name": "details_about_a_paper_s_citations",
          "description": "Retrieves a list of citations for a specific academic paper using its unique semantic scholar paper id. this endpoint is useful for researchers and developers who want to explore the impact and connections of a particular academic work within the broader scientific literature. it provides information about other papers that have cited the specified paper, allowing users to trace the influence of research and discover related works. the endpoint should be used when analyzing the reception and impact of a specific paper, building citation networks, or conducting bibliometric studies. it does not provide the full text of citing papers or detailed information about the citations beyond basic metadata."
        },
        {
          "name": "details_about_a_paper_s_references",
          "description": "Retrieves the list of references cited by a specific paper in the semantic scholar database. this endpoint allows users to explore the scholarly context of a publication by accessing its bibliography. it's particularly useful for understanding the foundation of a paper's research, tracing the development of ideas, or conducting literature reviews. the tool returns details about the cited papers, which may include their titles, authors, publication dates, and semantic scholar ids. it should be used when analyzing a paper's sources or investigating the connections between different academic works. note that this endpoint only provides outgoing references (papers cited by the specified paper) and not incoming citations (papers that cite the specified paper)."
        },
        {
          "name": "get_details_for_multiple_authors_at_once",
          "description": "Retrieves detailed information for multiple authors from semantic scholar in a single api call. this endpoint allows users to efficiently fetch data for a batch of authors by providing their unique semantic scholar ids. it's particularly useful for applications that need to gather information on multiple authors simultaneously, reducing the number of individual api calls required. the endpoint accepts a list of author ids and returns comprehensive details for each author, which may include their publications, citations, and other relevant academic information. while the exact response structure is not specified in the given schema, users can expect rich metadata about the requested authors."
        },
        {
          "name": "get_details_for_multiple_papers_at_once",
          "description": "The semanticscholar paper batch endpoint allows users to retrieve data for multiple academic papers in a single api call. this endpoint is particularly useful when you need to fetch information for a batch of papers efficiently, reducing the number of individual api requests. it accepts an array of paper ids and returns the corresponding data for each paper. use this endpoint when you have a list of known paper ids and want to retrieve their details simultaneously. keep in mind that while there's no specified limit on the number of ids you can send, very large batches may be subject to api rate limiting or response size restrictions."
        },
        {
          "name": "paper_bulk_search",
          "description": "Behaves similarly to <code>/paper/search</code>, but is intended for bulk retrieval of basic paper data without search relevance: <ul> <li>text query is optional and supports boolean logic for document matching.</li> <li>papers can be filtered using various criteria.</li> <li>up to 1,000 papers will be returned in each call.</li> <li>if there are more matching papers, a continuation \"token\" will be present.</li> <li>the query can be repeated with the token param added to efficiently continue fetching matching papers.</li> </ul> <br> returns a structure with an estimated total matches, batch of matching papers, and a continuation token if more results are available. <br> limitations: <ul> <li>nested paper data, such as citations, references, etc, is not available via this method.</li> <li>up to 10,000,000 papers can be fetched via this method. for larger needs, please use the <a href=\"datasets/\">datasets api</a> to retrieve full copies of the corpus.</li> </ul>"
        },
        {
          "name": "paper_relevance_search",
          "description": "The searchpapers endpoint allows users to search for academic papers within the semantic scholar database. it provides a powerful way to discover relevant scientific literature based on user-defined search criteria. this endpoint should be used when researchers, students, or developers need to find papers related to specific topics, authors, or time periods. the search functionality supports various query parameters to refine and customize the search results, making it suitable for both broad exploratory searches and targeted inquiries. however, users should be aware that the search is limited to papers indexed by semantic scholar, and very recent publications might not be immediately available. the endpoint returns a list of papers matching the search criteria, along with selected metadata fields, facilitating efficient literature review and analysis."
        },
        {
          "name": "paper_title_search",
          "description": "Behaves similarly to <code>/paper/search</code>, but is intended for retrieval of a single paper based on closest title match to given query. examples: <ul> <li><code>https://api.semanticscholar.org/graph/v1/paper/search/match?query=construction of the literature graph in semantic scholar</code></li> <ul> <li>returns a single paper that is the closest title match.</li> <li>each paper has its paperid, title, and matchscore as well as any other requested fields.</li> </ul> <li><code>https://api.semanticscholar.org/graph/v1/paper/search/match?query=totalgarbagenonsense</code></li> <ul> <li>returns with a 404 error and a \"title match not found\" message.</li> </ul> </ul> <br> limitations: <ul> <li>will only return the single highest match result.</li> </ul> </ul>"
        },
        {
          "name": "search_for_authors_by_name",
          "description": "The authorsearch endpoint allows users to search for authors within the semantic scholar database. it provides a way to find academic authors based on their names or other identifying information. this endpoint is particularly useful when you need to retrieve author metadata, such as their publications, affiliations, or research areas. the search functionality supports partial name matches and is case-insensitive, making it flexible for various search scenarios. use this endpoint when you want to discover authors or verify author information in the context of academic research. note that the search results may be limited and paginated, so multiple requests might be necessary for comprehensive results."
        },
        {
          "name": "suggest_paper_query_completions",
          "description": "To support interactive query-completion, return minimal information about papers matching a partial query example: <code>https://api.semanticscholar.org/graph/v1/paper/autocomplete?query=semanti</code>"
        },
        {
          "name": "text_snippet_search",
          "description": "Return the text snippets that most closely match the query. text snippets are excerpts of approximately 500 words, drawn from a paper's title, abstract, and body text, but excluding figure captions and the bibliography. it will return the highest ranked snippet first, as well as some basic data about the paper it was found in. examples: <ul> <li><code>https://api.semanticscholar.org/graph/v1/snippet/search?query=the literature graph is a property graph with directed edges&limit=1</code></li> <ul> <li>returns a single snippet that is the highest ranked match.</li> <li>each snippet has text, snippetkind, section, annotation data, and score. as well as the following data about the paper it comes from: corpusid, title, authors, and openaccessinfo.</li> </ul> </ul> <br> limitations: <ul> <li>you must include a query.</li> <li>if you don't set a limit, it will automatically return 10 results.</li> <li>the max limit allowed is 1000.</li> </ul> </ul>"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/semanticscholar/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"semanticscholar\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SEMANTICSCHOLAR])",
      "metadata": {
        "totalDownloads": "203",
        "activeUsers": "62",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "semanticscholar"
    },
    "sendgrid": {
      "name": "Sendgrid",
      "slug": "sendgrid",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "sendgrid_apikey",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "apiKey",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "You can find your API key in your project settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.sendgrid.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-10-25T16:07:52.927Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "SendGrid is a cloud-based email delivery platform providing transactional and marketing email services, with APIs for integration, analytics, and scalability",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/sendgrid.png",
        "app_url": "https://login.sendgrid.com",
        "categories": [
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          }
        ],
        "triggers_count": 0,
        "tools_count": 375
      },
      "deprecated": {
        "toolkitId": "ee996256-b24f-4927-ba0d-b2e6a9f20627"
      },
      "actions": [
        {
          "name": "add_an_ip_address_to_a_pool",
          "description": "Add an ip address to a pool with this endpoint. activation in sendgrid needed first. it takes up to 60 seconds. possible to add to multiple pools. retrieve ips via a specific endpoint."
        },
        {
          "name": "retrieve_all_lists",
          "description": "**this endpoint allows you to retrieve all of your recipient lists. if you don't have any lists, an empty array will be returned.**"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/sendgrid/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"sendgrid\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SENDGRID])",
      "metadata": {
        "totalDownloads": "28",
        "activeUsers": "6",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "sendgrid"
    },
    "junglescout": {
      "name": "Junglescout",
      "slug": "junglescout",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "junglescout_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key for authenticating requests to Jungle Scout API. For more information, visit https://developer.junglescout.com/api.",
                  "required": true
                },
                {
                  "name": "KEY_NAME",
                  "displayName": "KEY Name",
                  "type": "string",
                  "default": null,
                  "description": "Name of KEY",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://developer.junglescout.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-09-13T18:25:58.397Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Jungle Scout assists Amazon sellers with product research, sales estimates, and competitive insights to optimize inventory, pricing, and listing strategies",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/junglescout.jpeg",
        "app_url": "https://www.junglescout.com",
        "categories": [
          {
            "name": "E-commerce",
            "slug": "e-commerce"
          },
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 6
      },
      "deprecated": {
        "toolkitId": "0459c6f7-43b7-4c34-9537-77ddc828eeec"
      },
      "actions": [
        {
          "name": "keyword_historical_volume",
          "description": "Fetches the historical search volume data for a specified keyword over a given time period."
        },
        {
          "name": "query_the_product_database",
          "description": "Queries the jungle scout product database to retrieve product data based on various filters. compatible parameters include marketplace, sort, page size, product tiers, seller types, categories, exclude top brands, exclude unavailable products, min price, max price, min net, max net, min rank, max rank, min sales, max sales, min revenue, max revenue, min reviews, max reviews, min rating, max rating, min weight, max weight, min sellers, max sellers, min lqs, max lqs, min updated at, and max updated at."
        },
        {
          "name": "retrieve_data_for_a_specific_keyword_query",
          "description": "Returns data based on a specific keyword query, including search volume and competition."
        },
        {
          "name": "retrieve_keyword_data_for_specified_asins",
          "description": "Returns keywords for which the queried asin(s) appear in amazon search results. for a given keyword, jungle scout collects up to 3 pages of amazon keyword search results. query up to 10 asins at a time. apply filters to narrow search results."
        },
        {
          "name": "retrieve_sales_estimates_data",
          "description": "Fetches sales estimates data for specified parameters."
        },
        {
          "name": "retrieve_share_of_voice_data",
          "description": "Fetches share of voice data for specified keywords."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/junglescout/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"junglescout\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.JUNGLESCOUT])",
      "metadata": {
        "totalDownloads": "49",
        "activeUsers": "14",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "junglescout"
    },
    "pipedrive": {
      "name": "Pipedrive",
      "slug": "pipedrive",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "pipedrive_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "contacts:full leads:full mail:full activities:full products:full projects:full",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "COMPANYDOMAIN",
                  "displayName": "Company Domain",
                  "type": "string",
                  "default": null,
                  "description": "The domain for Pipedrive API requests. For more information, visit https://developers.pipedrive.com/",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{COMPANYDOMAIN}}.pipedrive.com/"
          }
        },
        {
          "name": "pipedrive_bearer",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "description": "Token for bearer token auth",
                  "required": true
                },
                {
                  "name": "COMPANYDOMAIN",
                  "displayName": "Company Domain",
                  "type": "string",
                  "default": null,
                  "description": "The domain for Pipedrive API requests. For more information, visit https://developers.pipedrive.com/",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{COMPANYDOMAIN}}.pipedrive.com/"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Pipedrive is a sales management tool built around pipeline visualization, lead tracking, activity reminders, and automation to keep deals progressing",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/pipedrive.svg",
        "app_url": "https://www.pipedrive.com/",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Sales & Customer Support",
            "slug": "sales-&-customer-support"
          }
        ],
        "triggers_count": 3,
        "tools_count": 276
      },
      "deprecated": {
        "toolkitId": "006311eb-3342-4353-95c6-b1ad0a364406"
      },
      "actions": [
        {
          "name": "add_an_activity",
          "description": "New activity added. response includes `more activities scheduled in context` to show if more are planned with the same entity. see tutorial on adding activities [here](https://pipedrive.readme.io/docs/adding-an-activity)."
        },
        {
          "name": "add_a_deal",
          "description": "Add a new deal to pipedrive with any custom fields, which vary by account and are identified by long hash keys. check dealfields for existing custom fields. for details, visit the tutorial on adding a deal."
        },
        {
          "name": "add_a_lead",
          "description": "Pipedrive api lets you add leads linked to people or organizations and tags them with 'api' source. custom fields from deals apply to leads and appear in responses if set. details are in the tutorials for adding and updating leads."
        },
        {
          "name": "add_a_note",
          "description": "Adds a new note."
        },
        {
          "name": "add_a_person",
          "description": "Add a new contact in pipedrive with optional custom fields unique to each account found using the `personfields` endpoint. the endpoint also handles `data.marketing status` for campaigns product users."
        },
        {
          "name": "add_a_product",
          "description": "Adds a new product to the products inventory. for more information, see the tutorial for <a href=\"https://pipedrive.readme.io/docs/adding-a-product\" target=\" blank\" rel=\"noopener noreferrer\">adding a product</a>."
        },
        {
          "name": "get_all_leads",
          "description": "The api returns sorted leads by creation time, supporting pagination via `limit` and `start`. custom field values are included if set, mimicking the `deals` endpoint structure; unset fields are omitted. leads share custom fields with deals."
        },
        {
          "name": "get_all_products",
          "description": "Returns data about all products."
        },
        {
          "name": "get_one_lead",
          "description": "Api returns specific lead details with custom field values in the deals format. unset custom fields are omitted. leads share custom fields with deals, not having a unique set."
        },
        {
          "name": "update_a_deal",
          "description": "Updates the properties of a deal. for more information, see the tutorial for <a href=\"https://pipedrive.readme.io/docs/updating-a-deal\" target=\" blank\" rel=\"noopener noreferrer\">updating a deal</a>."
        },
        {
          "name": "update_a_person",
          "description": "Modifies a person’s details in pipedrive. see the linked tutorial for guidance. if utilizing campaigns, the endpoint also handles `data.marketing status`."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/pipedrive/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"pipedrive\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.PIPEDRIVE])",
      "metadata": {
        "totalDownloads": "83",
        "activeUsers": "12",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "pipedrive"
    },
    "bamboohr": {
      "name": "Bamboohr",
      "slug": "bamboohr",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "bamboohr_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "Base64_APIKEY",
                  "displayName": "Encoded API Secret",
                  "type": "string",
                  "default": null,
                  "description": "Enter the encoded api secret, make sure to add colon : after apikey before encoding",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.bamboohr.com/api/gateway.php"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "BambooHR is an American technology company that provides human resources software as a service.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//bamboohr.svg",
        "app_url": "https://www.bamboohr.com",
        "categories": [
          {
            "name": "ERP",
            "slug": "erp"
          },
          {
            "name": "CRM",
            "slug": "crm"
          }
        ],
        "triggers_count": 0,
        "tools_count": 159
      },
      "deprecated": {
        "toolkitId": "da5bb3b3-c16b-4be6-a1a3-00a668341666"
      },
      "actions": [
        {
          "name": "add_employee",
          "description": "Creates a new employee record in the bamboohr system. this endpoint allows you to add a new employee to your company's hr database by providing essential information such as first name and last name. it's typically used when onboarding new hires or adding existing employees to the bamboohr system for the first time. the endpoint supports additional properties beyond the required fields, allowing for flexible and comprehensive employee data entry. however, it's important to note that this endpoint only initiates the employee record and may not include all possible employee information fields available in bamboohr."
        },
        {
          "name": "get_employee",
          "description": "Retrieves detailed information for a specific employee within a company's bamboohr system. this endpoint allows you to fetch comprehensive employee data using the employee's unique identifier. it's particularly useful when you need to access or display individual employee records, update employee information, or verify employee details. the endpoint returns all available fields for the employee, which may include personal information, job details, compensation data, and custom fields configured for the company. use this endpoint when you need specific, up-to-date information about a single employee. note that the exact fields returned may vary based on the company's bamboohr configuration and the permissions of the authenticated user making the request."
        },
        {
          "name": "get_employee_directory",
          "description": "Retrieves the employee directory for a specified bamboohr company. this endpoint provides a list of employees within the company, including basic information such as names, job titles, and departments. it's useful for getting an overview of the company's workforce or for integrating employee data into other systems. the endpoint should be used when you need a comprehensive list of employees, but it may not include detailed information about each employee. for more specific or detailed employee data, consider using custom reports or individual employee endpoints instead. keep in mind that the amount and type of information returned may depend on the user's permissions within the bamboohr system."
        },
        {
          "name": "update_employee",
          "description": "Updates an employee's basic information in the bamboohr system. this endpoint allows you to modify an employee's first name and/or last name. it should be used when there's a need to correct or change an employee's name in the hr records, such as in cases of marriage, divorce, or legal name changes. the endpoint accepts partial updates, meaning you can update either the first name, last name, or both. any additional properties sent in the request will also be accepted due to the 'additionalproperties: true' setting, but their behavior is not specified in this schema. it's important to note that this endpoint only updates name information and should not be used for modifying other employee data such as contact details or job information."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/bamboohr/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"bamboohr\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BAMBOOHR])",
      "metadata": {
        "totalDownloads": "90",
        "activeUsers": "10",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "bamboohr"
    },
    "whatsapp": {
      "name": "Whatsapp",
      "slug": "whatsapp",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "whatsapp_auth",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://graph.facebook.com/v22.0",
                  "description": "The API base URL for WhatsApp.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "auth_token",
                  "displayName": "Auth Token",
                  "type": "string",
                  "default": null,
                  "description": "The auth token for WhatsApp API requests. Visit https://developers.facebook.com/blog/post/2022/12/05/auth-tokens/ for more information.",
                  "required": true
                },
                {
                  "name": "phone_number_id",
                  "displayName": "Phone Number ID",
                  "type": "string",
                  "default": null,
                  "description": "For phone number ID, go to https://developers.facebook.com/apps and select the app where you have added WhatsApp. On the left side, click WhatsApp -> API Setup. Select 'Start using the API' On the next page you can find your Phone number ID:",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-15T13:40:44.461Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Enables interaction with customers through the WhatsApp Business API for messaging and automation.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//whatsapp.png",
        "app_url": "https://web.whatsapp.com/",
        "categories": [
          {
            "name": "communication",
            "slug": "communication"
          },
          {
            "name": "messaging",
            "slug": "messaging"
          }
        ],
        "triggers_count": 0,
        "tools_count": 5
      },
      "deprecated": {
        "toolkitId": "cbc85f2d-994c-4c75-9c38-2e709c0e1216"
      },
      "actions": [
        {
          "name": "send_contacts",
          "description": "Send contacts whatsapp number. note: the message will be delivered to the recipient only if they have initiated a conversation first."
        },
        {
          "name": "send_location",
          "description": "Send a location message to a whatsapp number. note: the location will be shared with the recipient only if they have texted first."
        },
        {
          "name": "send_media",
          "description": "Send a media message to a whatsapp number. note: the media will be delivered to the recipient only if they have texted first."
        },
        {
          "name": "send_message",
          "description": "Send a text message to a whatsapp number. note: the message will reflect on the recipient's phone number only if they have texted first."
        },
        {
          "name": "send_template_message",
          "description": "Send a template message to a whatsapp number."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/whatsapp/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"whatsapp\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.WHATSAPP])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "whatsapp"
    },
    "dynamics365": {
      "name": "Dynamics365",
      "slug": "dynamics365",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "microsoft_dynamics_365_crm_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://{{subdomain}}.api.crm.dynamics.com/user_impersonation,offline_access",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "subdomain",
                  "displayName": "Dynamics 365 Organization Name",
                  "type": "string",
                  "default": null,
                  "description": "Your Dynamics 365 organization name (e.g., myorg in myorg.crm.dynamics.com)",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{subdomain}}.api.crm.dynamics.com/api/data/v9.0"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-08T18:57:50.371Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Dynamics 365 from Microsoft combines CRM, ERP, and productivity apps to streamline sales, marketing, customer service, and operations in one integrated platform",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Dynamics%20365%20Icon.svg",
        "app_url": "https://www.microsoft.com/en-in/",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Sales & Customer Support",
            "slug": "sales-&-customer-support"
          },
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 17
      },
      "deprecated": {
        "toolkitId": "57e1fa74-2457-4dc9-99b5-25f9abae5bb0"
      },
      "actions": [
        {
          "name": "dynamicscrm_create_account",
          "description": "Creates a new account entity record in dynamics crm using the web api."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/dynamics365/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"dynamics365\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.DYNAMICS365])",
      "metadata": {
        "totalDownloads": "73",
        "activeUsers": "13",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "dynamics365"
    },
    "zendesk": {
      "name": "Zendesk",
      "slug": "zendesk",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "zendesk_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "organizations:read,organizations:write,tickets:read,tickets:write,users:read,users:write,webhooks:read,webhooks:write",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "subdomain",
                  "displayName": "Zendesk Subdomain",
                  "type": "string",
                  "default": null,
                  "description": "Your Zendesk subdomain (e.g., your-company-name in your-company-name.zendesk.com)",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{subdomain}}.zendesk.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Zendesk is a customer service and sales platform that helps businesses manage customer communication and support",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/zendesk.svg",
        "app_url": "https://www.zendesk.com/",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Sales & Customer Support",
            "slug": "sales-&-customer-support"
          }
        ],
        "triggers_count": 2,
        "tools_count": 11
      },
      "deprecated": {
        "toolkitId": "f28d98aa-3d96-406c-a060-96d3e0d876ae"
      },
      "actions": [
        {
          "name": "count_zendesk_organizations",
          "description": "Count the number of organizations in zendesk."
        },
        {
          "name": "create_zendesk_organization",
          "description": "Create an organization in zendesk."
        },
        {
          "name": "create_zendesk_ticket",
          "description": "Create a ticket in zendesk."
        },
        {
          "name": "delete_zendesk_organization",
          "description": "Delete an organization in zendesk."
        },
        {
          "name": "delete_zendesk_ticket",
          "description": "Delete a ticket in zendesk."
        },
        {
          "name": "get_about_me",
          "description": "Get information about the owner account in zendesk."
        },
        {
          "name": "get_all_zendesk_organizations",
          "description": "Get all organizations in zendesk."
        },
        {
          "name": "get_zendesk_organization",
          "description": "Get information about a specific organization in zendesk."
        },
        {
          "name": "get_zendesk_ticket_by_id",
          "description": "Get ticket details from zendesk."
        },
        {
          "name": "reply_zendesk_ticket",
          "description": "Action to reply to a zendesk ticket by adding a comment."
        },
        {
          "name": "update_zendesk_organization",
          "description": "Update an organization in zendesk."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/zendesk/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"zendesk\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ZENDESK])",
      "metadata": {
        "totalDownloads": "175",
        "activeUsers": "28",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "zendesk"
    },
    "googlephotos": {
      "name": "Googlephotos",
      "slug": "googlephotos",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "google_photos_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://www.googleapis.com/auth/photoslibrary,https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://photoslibrary.googleapis.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-12-23T11:46:33.925Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Google Photos is a photo and video storage service that is part of the\n    Google Drive office suite.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Google_Photos.png",
        "app_url": "https://photos.google.com",
        "categories": [
          {
            "name": "Document & File Management",
            "slug": "document-&-file-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 13
      },
      "deprecated": {
        "toolkitId": "5a8c8f49-035d-472e-8eb9-4464949482a2"
      },
      "actions": [
        {
          "name": "add_enrichment",
          "description": "Adds an enrichment at a specified position in a defined album."
        },
        {
          "name": "batch_add_media_items",
          "description": "Adds one or more media items to an album in google photos."
        },
        {
          "name": "batch_create_media_items",
          "description": "Unified action to upload media files and create them as items in google photos."
        },
        {
          "name": "batch_get_media_items",
          "description": "Returns the list of media items for the specified media item identifiers."
        },
        {
          "name": "create_album",
          "description": "Creates a new album in google photos."
        },
        {
          "name": "get_album",
          "description": "Returns the album based on the specified albumid."
        },
        {
          "name": "get_media_item_download",
          "description": "Downloads a media item from google photos and returns it as a file."
        },
        {
          "name": "list_albums",
          "description": "Lists all albums shown to a user in the albums tab of google photos."
        },
        {
          "name": "list_media_items",
          "description": "Lists all media items from a user's google photos library."
        },
        {
          "name": "search_media_items",
          "description": "Searches for media items in a user's google photos library."
        },
        {
          "name": "update_album",
          "description": "Updates an album's title or cover photo in google photos."
        },
        {
          "name": "update_media_item",
          "description": "Updates a media item's description in google photos."
        },
        {
          "name": "upload_media",
          "description": "Upload a media file to google photos. supports images (up to 200mb) and videos (up to 20gb)."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/googlephotos/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"googlephotos\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GOOGLEPHOTOS])",
      "metadata": {
        "totalDownloads": "106",
        "activeUsers": "20",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "googlephotos"
    },
    "lmnt": {
      "name": "Lmnt",
      "slug": "lmnt",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "API_KEY",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your API key for authentication. Obtain it from your LMNT settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.lmnt.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-19T07:19:08.231Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "LMNT is an API for text-to-speech and voice cloning",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/lmnt_logo.jpeg",
        "app_url": "https://drinklmnt.com",
        "categories": [
          {
            "name": "AI & Machine Learning",
            "slug": "ai-&-machine-learning"
          },
          {
            "name": "Other / Miscellaneous",
            "slug": "other-/-miscellaneous"
          }
        ],
        "triggers_count": 0,
        "tools_count": 7
      },
      "deprecated": {
        "toolkitId": "21e7f186-e555-496d-a389-b816d14e8564"
      },
      "actions": [
        {
          "name": "create_voice",
          "description": "Creates a voice in lmnt."
        },
        {
          "name": "delete_voice_info",
          "description": "Deletes information about a specific voice in lmnt."
        },
        {
          "name": "get_account",
          "description": "Gets an account in lmnt."
        },
        {
          "name": "get_voices_list",
          "description": "Gets a list of voices in lmnt."
        },
        {
          "name": "get_voice_info",
          "description": "Gets information about a specific voice in lmnt."
        },
        {
          "name": "synthesize_speech",
          "description": "Synthesizes speech from text using a specific voice in lmnt."
        },
        {
          "name": "update_voice",
          "description": "Updates information about a specific voice in lmnt."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/lmnt/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"lmnt\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.LMNT])",
      "metadata": {
        "totalDownloads": "76",
        "activeUsers": "18",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "lmnt"
    },
    "metaads": {
      "name": "Metaads",
      "slug": "metaads",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "meta_marketing_api_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "ads_read,ads_management",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://graph.facebook.com/v22.0"
          }
        },
        {
          "name": "meta_ads_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_token",
                  "displayName": "Access Token",
                  "type": "string",
                  "default": null,
                  "description": "Enter your access token from the Meta Ads dashboard",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://graph.facebook.com/v22.0"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-03-02T18:05:32.597Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Meta Ads Marketing API Integration\n\n    This tool provides access to Meta's Marketing API for managing ad campaigns,\n    ad sets, ads, and custom audiences, as well as retrieving insights and analytics.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/meta-icon.svg",
        "app_url": "https://business.meta.com/",
        "categories": [
          {
            "name": "Social Media",
            "slug": "social-media"
          }
        ],
        "triggers_count": 0,
        "tools_count": 16
      },
      "deprecated": {
        "toolkitId": "1b96fc64-adee-411f-9fb6-16c996032456"
      },
      "actions": [
        {
          "name": "create_ad",
          "description": "Create a new ad within an ad set using the meta marketing api. supports various ad formats including image, video, carousel, and collection ads."
        },
        {
          "name": "create_ad_creative",
          "description": "Create a new ad creative using the meta marketing api. ad creatives are reusable visual and interactive elements that define how your ad looks and behaves: - can be used in multiple ads - support various formats (image, video, carousel) - include text, media, and call-to-action buttons - must follow meta's ad policies"
        },
        {
          "name": "create_ad_set",
          "description": "Create a new ad set within a campaign using the meta marketing api. supports detailed targeting options, budgets, and optimization goals."
        },
        {
          "name": "create_campaign",
          "description": "Create a new advertising campaign using the meta marketing api. supports various campaign objectives, budgets, and bidding strategies."
        },
        {
          "name": "create_custom_audience",
          "description": "Create a new custom audience using the meta marketing api. supports various types of custom audiences including customer lists, website visitors, and app users."
        },
        {
          "name": "get_insights",
          "description": "Get insights data for a meta ads object (ad account, campaign, ad set, or ad) using the meta marketing api. supports various metrics, breakdowns, and filtering options with flexible date ranges."
        },
        {
          "name": "update_campaign",
          "description": "Update an existing advertising campaign using the meta marketing api. allows modification of campaign properties like name, status, budget, and bidding strategy. only the fields that need to be updated should be included in the request."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/metaads/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"metaads\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.METAADS])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "metaads"
    },
    "zenrows": {
      "name": "Zenrows",
      "slug": "zenrows",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your API Key. Get an API key here: https://app.zenrows.com/register?p=free",
                  "required": true
                },
                {
                  "name": "proxy_username",
                  "displayName": "Proxy username",
                  "type": "string",
                  "default": null,
                  "description": "Your Proxy username.",
                  "required": true
                },
                {
                  "name": "proxy_password",
                  "displayName": "Proxy password",
                  "type": "string",
                  "default": null,
                  "description": "Your Proxy password",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "http://{{proxy_username}}:{{proxy_password}}@superproxy.zenrows.com:1337"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-12-25T12:50:32.271Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "ZenRows is a web scraping API allowing developers to bypass CAPTCHAs and blocks, gather structured data from dynamic websites, and quickly integrate results into applications",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/zenrows.jpeg",
        "app_url": "https://www.zenrows.com/",
        "categories": [
          {
            "name": "Developer Tools & DevOps",
            "slug": "developer-tools-&-devops"
          }
        ],
        "triggers_count": 0,
        "tools_count": 16
      },
      "deprecated": {
        "toolkitId": "840dfd8c-c528-4666-8afb-980cddabb0b1"
      },
      "actions": [
        {
          "name": "get_api_usage",
          "description": "This tool retrieves the current api usage statistics and limits for your zenrows account. it is an independent action that requires no additional parameters besides authentication. it is useful for monitoring api usage and ensuring that the account has sufficient remaining credits."
        },
        {
          "name": "get_concurrency_status",
          "description": "This tool retrieves the current concurrency status of your zenrows api usage. it reports the maximum number of concurrent requests allowed by your plan and the number of available concurrent request slots. it is useful for monitoring api usage, implementing rate limiting, debugging request issues, and capacity planning."
        },
        {
          "name": "get_concurrency_status_detailed",
          "description": "This tool provides detailed information about the current concurrency status and limits of your zenrows account by making a request to the api and analyzing the response headers. it is essential for monitoring real-time api usage, managing concurrent requests, and ensuring optimal performance within plan limits."
        },
        {
          "name": "get_original_status",
          "description": "This tool retrieves the original http status code returned by the target website, which is useful for debugging purposes. it returns the original status code in the response headers under 'x-zenrows-original-status'. it can also provide the full response body and error messages, helping with debugging scraping issues, verifying website responses, monitoring availability, and understanding website behavior."
        },
        {
          "name": "get_pdf_from_url",
          "description": "This tool generates a pdf version of the scraped content from a given url. it requires javascript rendering to be enabled and sets the response type to pdf, making it ideal for archiving web pages, creating documentation, generating reports, or saving articles for offline reading."
        },
        {
          "name": "get_plaintext",
          "description": "This tool extracts plain text content from a webpage using the zenrows api. by using the response type=plaintext parameter, it strips html tags and formats the content into clean, plain text. it's useful for extracting readable content for nlp, summarization, or archiving purposes."
        },
        {
          "name": "get_response_compression",
          "description": "A tool to fetch content from a url using the zenrows api with compression enabled to optimize bandwidth usage and improve performance. it supports gzip, deflate, and br compression encodings, handles decompression automatically, and provides compression statistics along with the decompressed content."
        },
        {
          "name": "get_response_headers",
          "description": "A tool to retrieve and parse response headers from zenrows api requests. it provides critical metadata such as concurrency limits, available request slots, request cost, unique request id, and final url after redirects, which is essential for monitoring usage, debugging, and optimizing requests."
        },
        {
          "name": "get_session_id",
          "description": "This tool implements zenrows' session management functionality to maintain the same ip address across multiple requests for up to 10 minutes. it supports parameters like url, session id, and premium proxy, and is useful for maintaining consistent scraping sessions, simulating real user behavior, and avoiding detection by anti-bot systems."
        },
        {
          "name": "get_walmart_product",
          "description": "This tool allows users to extract detailed product information from walmart using zenrows' specialized e-commerce scraping api. it provides structured data for walmart products including product details, pricing, availability, and more."
        },
        {
          "name": "scrape_url_autoparse",
          "description": "The zenrows scrape url autoparse tool automatically parses and extracts structured data from any given url using intelligent parsing capabilities. it eliminates the need for manual css selectors by auto-identifying relevant content on web pages, returning data such as titles, main content, meta descriptions, images, links, prices, and contact information in a structured json format."
        },
        {
          "name": "scrape_url_html",
          "description": "This tool extracts raw html data from a given url using zenrows' universal scraper api. it focuses on retrieving the pure html content of the webpage without automatic parsing or data extraction. it supports parameters such as js render for enabling javascript rendering, custom headers for custom http headers, premium proxy for using premium proxies, and session id for maintaining the same ip across multiple requests."
        },
        {
          "name": "scrape_with_css_selectors",
          "description": "This tool allows users to scrape specific elements from a webpage using css selectors. it is particularly useful for targeted data extraction rather than retrieving the entire page content. the endpoint takes a url and a json object containing css selectors for parsing elements such as titles, links, images, and prices, and includes optional parameters like using premium proxies, specifying response wait times, and custom headers among others."
        },
        {
          "name": "screenshot_url",
          "description": "A tool to capture screenshots of web pages using zenrows api. this tool allows you to take screenshots of entire web pages or specific elements, with customizable options for format and quality."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/zenrows/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"zenrows\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ZENROWS])",
      "metadata": {
        "totalDownloads": "100",
        "activeUsers": "34",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "zenrows"
    },
    "googlesuper": {
      "name": "Googlesuper",
      "slug": "googlesuper",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "google_super_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://www.googleapis.com/auth/drive.file,https://www.googleapis.com/auth/drive.readonly,https://www.googleapis.com/auth/userinfo.email,https://www.googleapis.com/auth/documents,https://www.googleapis.com/auth/calendar,https://www.googleapis.com/auth/calendar.events,https://www.googleapis.com/auth/adwords,https://www.googleapis.com/auth/gmail.modify,https://www.googleapis.com/auth/userinfo.profile,https://www.googleapis.com/auth/contacts.readonly,https://www.googleapis.com/auth/spreadsheets,https://www.googleapis.com/auth/analytics.readonly,https://www.googleapis.com/auth/analytics,https://www.googleapis.com/auth/tasks",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.googleapis.com/drive/v3"
          }
        },
        {
          "name": "google_drive_bearer",
          "mode": "BEARER_TOKEN",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "token",
                  "displayName": "Token",
                  "type": "string",
                  "description": "Token for bearer token auth",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.googleapis.com/drive/v3"
          }
        },
        {
          "name": "API_KEY",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your API key for authentication. Obtain it from your Google Maps API Console.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://maps.googleapis.com/maps/api/directions"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-03-10T13:48:21.187Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Google Super App combines all Google services including Drive, Calendar, Gmail, Sheets, Analytics, Ads, and more, providing a unified platform for seamless integration and management of your digital life.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/google.svg",
        "app_url": "https://www.google.com/",
        "categories": [
          {
            "name": "Document & File Management",
            "slug": "document-&-file-management"
          },
          {
            "name": "Scheduling & Booking",
            "slug": "scheduling-&-booking"
          },
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          },
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          },
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          },
          {
            "name": "Advertising & Marketing",
            "slug": "advertising-&-marketing"
          }
        ],
        "triggers_count": 3,
        "tools_count": 101
      },
      "deprecated": {
        "toolkitId": "114f4b50-afb9-455d-99a8-92868992a260"
      },
      "actions": [
        {
          "name": "delete_draft",
          "description": "Permanently deletes a specific gmail draft using its id; ensure the draft exists and the user has necessary permissions for the given `user id`."
        },
        {
          "name": "delete_message",
          "description": "Permanently deletes a specific email message by its id from a gmail mailbox; for `user id`, use 'me' for the authenticated user or an email address to which the authenticated user has delegated access."
        },
        {
          "name": "fetch_emails",
          "description": "Fetches a list of email messages from a gmail account, supporting filtering, pagination, and optional full content retrieval."
        },
        {
          "name": "get_conference_record_for_meet",
          "description": "Get conference record by space name, meeting code, start time, end time"
        },
        {
          "name": "get_contacts",
          "description": "Fetches contacts (connections) for the authenticated google account, allowing selection of specific data fields and pagination."
        },
        {
          "name": "list_drafts",
          "description": "Retrieves a paginated list of email drafts from a user's gmail account."
        },
        {
          "name": "move_to_trash",
          "description": "Moves an existing, non-deleted email message to the trash for the specified user."
        },
        {
          "name": "patch_event",
          "description": "Updates specified fields of an existing event in a google calendar using patch semantics (array fields like `attendees` are fully replaced if provided); ensure the `calendar id` and `event id` are valid and the user has write access to the calendar."
        },
        {
          "name": "reply_to_thread",
          "description": "Sends a reply within a specific gmail thread using the original thread's subject, requiring a valid `thread id` and correctly formatted email addresses."
        },
        {
          "name": "search_people",
          "description": "Searches contacts by matching the query against names, nicknames, emails, phone numbers, and organizations, optionally including 'other contacts'."
        },
        {
          "name": "send_email",
          "description": "Sends an email via gmail api using the authenticated user's google profile display name, requiring `is html=true` if the body contains html and valid `s3key`, `mimetype`, `name` for any attachment."
        },
        {
          "name": "upload_file",
          "description": "Uploads a file (max 5mb) to google drive, moving it to a specified folder if a valid folder id is provided, otherwise uploads to root."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/googlesuper/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"googlesuper\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GOOGLESUPER])",
      "metadata": {
        "totalDownloads": "97",
        "activeUsers": "39",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "googlesuper"
    },
    "yousearch": {
      "name": "Yousearch",
      "slug": "yousearch",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "yousearch_auth",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "apikey",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your YouSearch API key.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.ydc-index.io"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-06-14T12:12:24.632Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "YouSearch is a search engine or search tool that enables users to find relevant information, possibly with enhanced filtering or privacy-focused features",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//you.webp",
        "app_url": "https://you.com/",
        "categories": [
          {
            "name": "Other / Miscellaneous",
            "slug": "other-/-miscellaneous"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "5153e53d-58fb-4d00-8ba1-3a8e2e94f899"
      },
      "actions": [
        {
          "name": "you_search",
          "description": "Perform a search using the custom api."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/yousearch/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"yousearch\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.YOUSEARCH])",
      "metadata": {
        "totalDownloads": "197",
        "activeUsers": "21",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "yousearch"
    },
    "linkup": {
      "name": "Linkup",
      "slug": "linkup",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "API Key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "If you don't have an API Key, you can get one by signing up at https://linkup.so",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.linkup.so"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-01-24T05:38:21.223Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Search the Web for Relevant Results (RAG Use Case)",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/linkup.jpeg",
        "app_url": "https://www.linkup.com/",
        "categories": [
          {
            "name": "Other / Miscellaneous",
            "slug": "other-/-miscellaneous"
          }
        ],
        "triggers_count": 0,
        "tools_count": 2
      },
      "deprecated": {
        "toolkitId": "7e6e03ae-0b41-488d-a5ec-0a485f3defbc"
      },
      "actions": [
        {
          "name": "get_answer",
          "description": "This tool gets a natural language answer to a given question using linkup's api. it processes the question with provided parameters (query and depth) and returns a structured answer with text and sources used. it supports varying precision based on defined depth and is designed for natural language query responses."
        },
        {
          "name": "search",
          "description": "This tool allows users to search and retrieve insights using the linkup api. it implements a search functionality via the post /search endpoint and supports various parameters including 'query', 'depth', and 'output type' (with options such as 'sourcedanswer', 'searchresults', and 'structured'). optional inclusion of images is available via the include images parameter."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/linkup/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"linkup\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.LINKUP])",
      "metadata": {
        "totalDownloads": "62",
        "activeUsers": "8",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "linkup"
    },
    "listennotes": {
      "name": "Listennotes",
      "slug": "listennotes",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "listennotes_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Listen notes API key.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://listen-api.listennotes.com/api/v2"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-04T09:12:18.804Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "The best podcast search engine.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/listennotes.png",
        "app_url": "https://www.listennotes.com",
        "categories": [
          {
            "name": "podcast",
            "slug": "podcast"
          },
          {
            "name": "productivity",
            "slug": "productivity"
          }
        ],
        "triggers_count": 0,
        "tools_count": 26
      },
      "deprecated": {
        "toolkitId": "774a7e45-4e4e-4b07-8ee4-e7ea67ec87f9"
      },
      "actions": [
        {
          "name": "fetch_a_list_of_your_playlists",
          "description": "Retrieves a list of playlists from the listen notes platform. this endpoint allows users to fetch all available playlists associated with their account or publicly accessible playlists. it should be used when you need to display a collection of playlists, such as in a user's library or for browsing purposes. the endpoint returns basic information about each playlist, which may include the playlist name, creator, number of episodes, and other relevant metadata. note that this endpoint likely returns a limited number of playlists per request, and pagination might be necessary for retrieving large collections. it does not provide detailed information about the episodes within each playlist; separate api calls would be required to fetch that level of detail."
        },
        {
          "name": "fetch_a_random_podcast_episode",
          "description": "The 'just listen' endpoint is a basic listener or health check mechanism for the listennotestest app. it allows users to verify the availability and responsiveness of the service without requiring any input parameters. this endpoint should be used for monitoring the status of the listennotestest service or as a simple ping to ensure the api is operational. it's important to note that this endpoint likely doesn't provide any specific data about podcasts or user accounts. the response is expected to be minimal, possibly just confirming that the service is up and running. while useful for basic health checks, it should not be relied upon for any complex operations or data retrieval within the listennotestest ecosystem."
        },
        {
          "name": "full_text_search",
          "description": "The search endpoint allows users to query notifications or events within the listennotestest platform. it provides a way to find specific notifications based on keywords or identifiers, helping users locate relevant information quickly. this get request likely returns a list of matching notifications or events, which can be useful for monitoring specific activities or retrieving historical data. the endpoint supports basic search functionality and potentially includes options for pagination and sorting to manage large result sets efficiently."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/listennotes/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"listennotes\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.LISTENNOTES])",
      "metadata": {
        "totalDownloads": "8",
        "activeUsers": "9",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "listennotes"
    },
    "typefully": {
      "name": "Typefully",
      "slug": "typefully",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "typefully_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Typefully Base URL",
                  "type": "string",
                  "default": "https://api.typefully.com",
                  "description": "The base URL of your Typefully instance (e.g., https://api.typefully.com).",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "You can find your API key in your project settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-01-13T11:11:58.712Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Integrate Typefully to streamline and manage your AI-powered content creation.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/typefully.png",
        "app_url": "https://typefully.com/",
        "categories": [
          {
            "name": "AI & Machine Learning",
            "slug": "ai-&-machine-learning"
          }
        ],
        "triggers_count": 0,
        "tools_count": 5
      },
      "deprecated": {
        "toolkitId": "9025992e-cb12-4a0d-8cd7-5864cec564bc"
      },
      "actions": [
        {
          "name": "create_draft",
          "description": "Creates a draft in typefully."
        },
        {
          "name": "get_notifications",
          "description": "Get notifications from typefully. can be filtered by kind (inbox or activity)."
        },
        {
          "name": "get_recently_published",
          "description": "Get recently published drafts from typefully."
        },
        {
          "name": "get_recently_scheduled",
          "description": "Get recently scheduled drafts from typefully."
        },
        {
          "name": "mark_notifications_read",
          "description": "Mark notifications as read in typefully. can be filtered by kind and account id."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/typefully/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"typefully\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.TYPEFULLY])",
      "metadata": {
        "totalDownloads": "119",
        "activeUsers": "24",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "typefully"
    },
    "bolna": {
      "name": "Bolna",
      "slug": "bolna",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "bolna_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Bolna API key for authentication. Please obtain it from the Developers section in the dashboard",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.bolna.dev"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-02-04T08:41:16.376Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Create conversational voice agents using Bolna AI to enhance interactions, streamline operations and automate support.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/bolna-logo.png",
        "app_url": "https://www.bolna.ai/",
        "categories": [
          {
            "name": "productivity",
            "slug": "productivity"
          },
          {
            "name": "dev-tools",
            "slug": "dev-tools"
          }
        ],
        "triggers_count": 0,
        "tools_count": 15
      },
      "deprecated": {
        "toolkitId": "e1685cef-3f45-4e1a-91aa-2ba4bf6b3675"
      },
      "actions": [
        {
          "name": "delete_agent_by_id",
          "description": "Delete an agent"
        },
        {
          "name": "delete_batch_by_id",
          "description": "Delete a batch"
        },
        {
          "name": "fetch_all_batches_by_agent_id",
          "description": "List all batches for agent"
        },
        {
          "name": "get_all_agents",
          "description": "List all agents"
        },
        {
          "name": "get_all_phone_numbers",
          "description": "List all phone numbers for your account"
        },
        {
          "name": "get_execution_by_id",
          "description": "Retrieve specific execution by `execution id`"
        },
        {
          "name": "make_a_phone_call_from_agent",
          "description": "Initiate calls"
        },
        {
          "name": "retrieve_agent_by_id",
          "description": "Retrieve an agent"
        },
        {
          "name": "retrieve_agent_execution_details",
          "description": "Retrieve specific execution by an agent"
        },
        {
          "name": "retrieve_agent_execution_status",
          "description": "Retrieve all executions by an agent"
        },
        {
          "name": "retrieve_batch_details_by_id",
          "description": "Retrieve a batch"
        },
        {
          "name": "retrieve_batch_execution_list",
          "description": "Retrieve all executions from a batch"
        },
        {
          "name": "schedule_batch_by_id",
          "description": "Schedule a batch for calling via agent"
        },
        {
          "name": "setup_inbound_call_for_agent",
          "description": "Add agent for inbound calls"
        },
        {
          "name": "stop_batch_by_id",
          "description": "Stop a running batch"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/bolna/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"bolna\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BOLNA])",
      "metadata": {
        "totalDownloads": "36",
        "activeUsers": "25",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "bolna"
    },
    "rocketlane": {
      "name": "Rocketlane",
      "slug": "rocketlane",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "rocketlane_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key generated from the Rocketlane Developer Console, used for authenticating API requests.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.rocketlane.com/api"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-27T07:14:23.885Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Collaborative customer onboarding and implementation platform for professional services teams.",
        "logo": "https://rocketlane.com/favicon.ico",
        "app_url": "https://rocketlane.com",
        "categories": [
          {
            "name": "Project Management",
            "slug": "project-management"
          },
          {
            "name": "Customer Onboarding",
            "slug": "customer-onboarding"
          },
          {
            "name": "Professional Services",
            "slug": "professional-services"
          },
          {
            "name": "Collaboration",
            "slug": "collaboration"
          }
        ],
        "triggers_count": 0,
        "tools_count": 17
      },
      "deprecated": {
        "toolkitId": "c3446f9a-57a7-4928-95e2-858cdc3a0e7a"
      },
      "actions": [
        {
          "name": "create_company",
          "description": "Creates a new company (account) in rocketlane. this action allows you to create a new company/account in your rocketlane workspace. it complements existing company-related actions by providing the ability to register new accounts using the post /api/v2/companies endpoint."
        },
        {
          "name": "create_time_entry",
          "description": "Tool to create a new time entry in rocketlane. this endpoint allows users to log time spent on tasks or projects. it complements the existing rocketlane get time entries action and enables complete time tracking functionality within the rocketlane integration."
        },
        {
          "name": "delete_project",
          "description": "This tool allows users to permanently delete a project in rocketlane. it requires a valid project id and appropriate permissions (admins, super users, and project owners). note that deletion is irreversible; therefore, consider using archival if future access might be needed."
        },
        {
          "name": "get_company",
          "description": "This tool retrieves detailed information about a specific company/account in rocketlane by its id. it provides comprehensive information about the company including its status, address, currency, created date, updated date, custom fields, and other relevant metadata."
        },
        {
          "name": "get_time_entries",
          "description": "Tool to retrieve all time entries from rocketlane. it provides endpoints to get time entries with support for pagination, filtering by project id, user id, start and end dates. this allows tracking of time spent on various tasks, generating reports, and analyzing team productivity."
        },
        {
          "name": "list_companies",
          "description": "This tool retrieves a list of all companies/accounts in rocketlane. it's a basic get endpoint that returns all companies without requiring any specific resource ids or additional parameters. the endpoint is independent and can be executed with just the authentication token."
        },
        {
          "name": "list_company_fields",
          "description": "This tool retrieves a list of all available company/account fields in rocketlane. these fields represent the various attributes and properties that can be associated with companies/accounts in the rocketlane system."
        },
        {
          "name": "list_company_note_fields",
          "description": "This tool retrieves a list of all available note fields for companies in rocketlane. company note fields are custom fields that can be added to company/account notes for better organization and data collection. it provides details such as field id, name, type, required, options, and description for each note field."
        },
        {
          "name": "list_currencies",
          "description": "Returns a predefined list of commonly used currencies since rocketlane api doesn't provide a dedicated currencies endpoint. this list includes major global currencies with their codes, names, and symbols."
        },
        {
          "name": "list_projects",
          "description": "This tool retrieves a list of all projects in the rocketlane instance. it provides project details including project id, project name, project status, created date, owner information, customer information, and other metadata."
        },
        {
          "name": "list_project_fields",
          "description": "This tool retrieves a list of all project fields in rocketlane, including both default and custom fields. it provides definitions, metadata, and configuration details for each field, which is essential for understanding project structure, managing projects, and integrating project management workflows."
        },
        {
          "name": "list_project_phases",
          "description": "This tool retrieves a list of project phases from rocketlane. it allows users to fetch and filter phases based on various parameters including projectid, startdate, duedate, startdateactual, duedateactual, phasename, sortby, sortorder, limit, and pagetoken. the api supports various operators for filtering such as .gt, .eq, .lt, .ge, .le, .cn, and .nc."
        },
        {
          "name": "list_tasks",
          "description": "This tool allows users to retrieve a list of tasks from their rocketlane instance with advanced filtering and pagination options. it supports parameters like limit, pagetoken, sortby, sortorder, and custom filters for comprehensive task management."
        },
        {
          "name": "list_task_fields",
          "description": "This tool retrieves a list of all task fields in rocketlane. it allows users to get comprehensive field data and details for tasks, and supports various query parameters for filtering, pagination, and sorting."
        },
        {
          "name": "list_templates",
          "description": "This tool retrieves a list of all available templates in rocketlane. it fetches all available templates in the account and returns a list of template objects containing details like template id, name, description, created at, updated at, is dynamic, and has automations."
        },
        {
          "name": "list_users",
          "description": "This tool retrieves all users in the rocketlane instance. it is an independent action that does not require any resource ids or external dependencies. the endpoint returns detailed user information including user ids, emails, names, roles, and statuses."
        },
        {
          "name": "update_company",
          "description": "This tool updates an existing company/account in rocketlane. it uses the put endpoint to update the company details identified by companyid. the action complements the existing create company action and is essential for maintaining up-to-date company information, relying on rocketlane's api specifications and company management endpoints."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/rocketlane/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"rocketlane\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ROCKETLANE])",
      "metadata": {
        "totalDownloads": "16",
        "activeUsers": "13",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "rocketlane"
    },
    "bill": {
      "name": "Bill",
      "slug": "bill",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "billcom_auth",
          "mode": "BILLCOM_AUTH",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "environment",
                  "displayName": "Environment",
                  "type": "string",
                  "default": "api-sandbox",
                  "description": "The environment to use like api-sandbox or api, api-sandbox is recommended for testing",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://gateway.stage.bill.com/connect"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-03-12T05:43:31.030Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Integration with Bill.com API",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/bill.jpeg",
        "app_url": "https://www.bill.com",
        "categories": [
          {
            "name": "accounting",
            "slug": "accounting"
          }
        ],
        "triggers_count": 0,
        "tools_count": 221
      },
      "deprecated": {
        "toolkitId": "017f4e86-f67e-463c-bfa6-e725f78e3583"
      },
      "actions": [
        {
          "name": "get_current_user_details",
          "description": "Get details about the current user."
        },
        {
          "name": "get_list_of_transactions",
          "description": "Get a list of transaction objects."
        },
        {
          "name": "get_list_of_user_roles",
          "description": "Get a list of user role objects. by default, you get 20 results on one page of results. set `max` in your request to get up to 100 results on one page. see [search operations with lists](doc:search-op-with-lists) in the guides section for filtering, sorting, and pagination examples."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/bill/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"bill\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BILL])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "bill"
    },
    "zoom": {
      "name": "Zoom",
      "slug": "zoom",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "zoom_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "meeting:read:admin,meeting:write:admin,recording:write:admin,recording:master,recording:read:admin,user:read:admin,user:write:admin,user:master,account:read:admin,account:master,account:write:admin,calendar:write:admin,calendar:read:admin,contact:read:admin,group:write:admin,group:read:admin,group:master,mail:read:admin,mail:write:admin,phone_recording:write:admin,phone_recording:read:admin,phone_recording:master,clips:write:admin,zoom_events_recordings:read:admin,meeting_summary:read:admin",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.zoom.us/v2",
                  "description": "Zoom API base URL",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Zoom is a video conferencing and online meeting platform featuring breakout rooms, screen sharing, and integrations with various enterprise tools",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/zoom.svg",
        "app_url": "https://www.zoom.com/",
        "categories": [
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          }
        ],
        "triggers_count": 0,
        "tools_count": 172
      },
      "deprecated": {
        "toolkitId": "9372285e-96b9-4939-8793-53a01b6d8ead"
      },
      "actions": [
        {
          "name": "create_a_meeting",
          "description": "Enable zoom meeting creation via user-level apps with \"me\". \"start url\" for hosts expires in 2 hours, or 90 days for \"custcreate\" users. renew via api, capped at 100 requests/day. requires \"meeting:write\" permission, subject to medium rate limit."
        },
        {
          "name": "delete_a_meeting_registrant",
          "description": "Delete a meeting registrant. **scopes:** `meeting:write:admin`,`meeting:write` **[rate limit label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `light`"
        },
        {
          "name": "get_a_meeting",
          "description": "The text provides details on api permissions for reading meeting information, categorizing permissions into general and granular scopes, and labels the rate limit as 'light'."
        },
        {
          "name": "get_a_meeting_summary",
          "description": "Meeting summary info requires a pro+ host plan, ai companion enabled, excluding e2ee meetings. scopes include meeting summary:read and admin versions. rate limit: light."
        },
        {
          "name": "get_meeting_recordings",
          "description": "To download meeting recordings, use `download url`. include oauth token in the header for passcode-protected ones. supports `recording:read` and `phone recording:read:admin` scopes, with a `light` rate limit."
        },
        {
          "name": "list_all_recordings",
          "description": "This text details how to list zoom cloud recordings for a user, notably by using \"me\" for user-level apps and requiring an oauth token for access. it requires a pro plan, cloud recording enabled, and has a medium rate limit."
        },
        {
          "name": "list_meetings",
          "description": "This zoom api lists a user's scheduled meetings using the `me` value for user-level apps, excluding instant meetings and only showing unexpired ones. it requires specific scopes and has a `medium` rate limit."
        },
        {
          "name": "update_meeting_status",
          "description": "Update the status of a meeting. **scopes:** `meeting:write:admin`,`meeting:write` **[rate limit label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `light`"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/zoom/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"zoom\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ZOOM])",
      "metadata": {
        "totalDownloads": "126",
        "activeUsers": "32",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "zoom"
    },
    "onepage": {
      "name": "Onepage",
      "slug": "onepage",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "onepage_bearer_token",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "authToken",
                  "displayName": "Auth Token",
                  "type": "string",
                  "default": null,
                  "description": "Auth token for the Onepage API.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://onepage-v2-prod.azurewebsites.net/api/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-01-17T08:41:43.231Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "API for enriching user and company data, providing endpoints for token validation and generic search.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/onepage.svg",
        "app_url": "https://onepagerapp.com",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          },
          {
            "name": "AI & Machine Learning",
            "slug": "ai-&-machine-learning"
          }
        ],
        "triggers_count": 0,
        "tools_count": 2
      },
      "deprecated": {
        "toolkitId": "0310cf63-5c36-40bc-95cb-ae6f9f3f489d"
      },
      "actions": [
        {
          "name": "search_input_post_request",
          "description": "The searchinput endpoint allows users to perform a search query within the onepage platform. it accepts a required search string and optional parameters for language and output format customization. this endpoint is designed for retrieving relevant information based on user-specified search terms, with the ability to filter results by language and choose between structured (json) or plain text output. use this endpoint when you need to search for specific content or information within the onepage ecosystem. it's particularly useful for integrating search functionality into applications or workflows that interact with onepage data. note that this endpoint focuses solely on search functionality and does not provide additional features like content creation or modification."
        },
        {
          "name": "token_details_request",
          "description": "Retrieves detailed information about a specific token in the onepage system. this endpoint should be used when you need to obtain comprehensive data about a token, such as its associated permissions, expiration date, or other metadata. it's particularly useful for token management tasks, such as verifying token validity or checking token attributes. the endpoint accepts a single token and returns its corresponding details. it should not be used for token creation, deletion, or modification operations. note that the specific details returned may vary based on the onepage implementation and the token's type or purpose."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/onepage/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"onepage\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ONEPAGE])",
      "metadata": {
        "totalDownloads": "34",
        "activeUsers": "5",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "onepage"
    },
    "entelligence": {
      "name": "Entelligence",
      "slug": "entelligence",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "entelligence",
          "mode": "NO_AUTH",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://entelligence.ddbrief.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-10-10T09:09:40.852Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Entelligence leverages artificial intelligence to provide insights, recommendations, and predictive analytics for businesses seeking data-driven decision-making capabilities",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/entelligence.png",
        "app_url": "https://www.entelligence.ai/",
        "categories": [
          {
            "name": "AI & Machine Learning",
            "slug": "ai-&-machine-learning"
          }
        ],
        "triggers_count": 0,
        "tools_count": 2
      },
      "deprecated": {
        "toolkitId": "575c93ff-d39e-4783-8dfa-62d0f4deea00"
      },
      "actions": [
        {
          "name": "add_a_new_repository",
          "description": "Add a new repository to the system with specified details"
        },
        {
          "name": "interact_with_the_repository_agent",
          "description": "Send a question and related information to the repository agent and receive a streaming response"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/entelligence/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"entelligence\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ENTELLIGENCE])",
      "metadata": {
        "totalDownloads": "98",
        "activeUsers": "13",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "entelligence"
    },
    "retellai": {
      "name": "Retellai",
      "slug": "retellai",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "retellai_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Retellai API key for authentication. Obtain it from your  settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.retellai.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-26T11:33:09.235Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "RetellAI captures calls and transcripts, enabling businesses to analyze conversations, extract insights, and enhance customer interactions in one centralized platform",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/retellai.jpeg",
        "app_url": "https://www.retellai.com/",
        "categories": [
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          }
        ],
        "triggers_count": 0,
        "tools_count": 10
      },
      "deprecated": {
        "toolkitId": "bc893b10-0085-4e68-9277-840fa97fad73"
      },
      "actions": [
        {
          "name": "buy_a_new_phone_number_bind_agents",
          "description": "This endpoint allows purchasing a new phone number with a specified area code and binding it to designated agents for inbound and outbound calls. it requires json with agent ids and area code. responses indicate the creation status or errors."
        },
        {
          "name": "create_a_new_outbound_phone_call",
          "description": "Initiate an outbound call by post to '/v2/create-phone-call'. requires 'from number' and 'to number' in e.164 format. optional overrides and metadata supported. on success, returns call details including type, status, and ids."
        },
        {
          "name": "create_a_new_web_call",
          "description": "The /v2/create-web-call endpoint creates a web call with a unique agent id, returning call details like type, token, call id, and status in json format, with a 201 response. optional metadata and variables can be included."
        },
        {
          "name": "delete_phone_number",
          "description": "Deletes an existing phone number identified by its e.164 format."
        },
        {
          "name": "list_all_phone_numbers",
          "description": "Retrieves a list of all phone numbers associated with the account."
        },
        {
          "name": "retrieve_call_details",
          "description": "The /v2/list-calls endpoint retrieves call records with filters (agent id, timestamps), offers sorting, pagination, and handles different responses (success, bad request, unauthorized, server error) in json format."
        },
        {
          "name": "retrieve_call_details_by_id",
          "description": "Retrieve call details by id for web/phone calls, including type, agent id, status, timestamps, and web access token; covering responses from success to server errors."
        },
        {
          "name": "retrieve_details_of_a_specific_phone_number",
          "description": "Fetches the details of a given phone number in e.164 format."
        },
        {
          "name": "retrieve_details_of_a_specific_voice",
          "description": "\"access specific voice details including its name, provider, accent, gender, and a preview audio url using the unique voice id. parameters required.\""
        },
        {
          "name": "update_phone_number",
          "description": "Updates the agent bound to a purchased phone number."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/retellai/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"retellai\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.RETELLAI])",
      "metadata": {
        "totalDownloads": "76",
        "activeUsers": "16",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "retellai"
    },
    "servicenow": {
      "name": "Servicenow",
      "slug": "servicenow",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "servicenow_auth",
          "mode": "BASIC",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "username",
                  "displayName": "Username",
                  "type": "string",
                  "description": "Username for basic auth",
                  "required": true
                },
                {
                  "name": "password",
                  "displayName": "Password",
                  "type": "string",
                  "description": "Password for basic auth",
                  "required": true
                },
                {
                  "name": "instanceName",
                  "displayName": "Instance Name",
                  "type": "string",
                  "default": null,
                  "description": "Your Servicenow Instance Name.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{instanceName}}.service-now.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-02-27T11:24:27.312Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Servicenow provides IT Service Management Transform service management to boost productivity and maximize ROI",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/servicenow.png",
        "app_url": "https://www.servicenow.com",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 5
      },
      "deprecated": {
        "toolkitId": "837f892f-68c5-4def-880b-ec742f698953"
      },
      "actions": [
        {
          "name": "attach_file_to_record",
          "description": "Attaches a file to a specified record in a servicenow table. this endpoint allows you to attach a file with the provided details to the specified record."
        },
        {
          "name": "create_a_record",
          "description": "Creates a new record in a specified servicenow table. this endpoint allows you to create a new record with the provided data in the specified table."
        },
        {
          "name": "delete_a_record",
          "description": "Deletes a record from a specified servicenow table. this endpoint allows you to delete a record with the provided id from the specified table."
        },
        {
          "name": "find_file",
          "description": "Finds a file in a specified servicenow table. this endpoint allows you to find a file with the provided name in the specified table."
        },
        {
          "name": "get_records",
          "description": "Retrieves a record from a specified servicenow table. this endpoint allows you to retrieve a record with the provided id from the specified table."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/servicenow/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"servicenow\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SERVICENOW])",
      "metadata": {
        "totalDownloads": "141",
        "activeUsers": "13",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "servicenow"
    },
    "googleads": {
      "name": "Googleads",
      "slug": "googleads",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "googleads_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://www.googleapis.com/auth/adwords",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "customer_id",
                  "displayName": "Customer ID",
                  "type": "string",
                  "default": null,
                  "description": "The customer ID for the Google Ads account. Must be numeric-only, without dashes or spaces (e.g., 1234567890).",
                  "required": true
                },
                {
                  "name": "developer_token",
                  "displayName": "Developer Token",
                  "type": "string",
                  "default": null,
                  "description": "The developer token for the Google Ads account",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://googleads.googleapis.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-03-02T18:05:32.597Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Connect to Google Ads to manage and create campaigns.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/googleads.png",
        "app_url": "​https://ads.google.com",
        "categories": [
          {
            "name": "Advertising & Marketing",
            "slug": "advertising-&-marketing"
          }
        ],
        "triggers_count": 0,
        "tools_count": 6
      },
      "deprecated": {
        "toolkitId": "a44d3fe3-9673-4dbf-882d-fc295604471e"
      },
      "actions": [
        {
          "name": "add_or_remove_to_customer_list",
          "description": "Addorremovetocustomerlist tool will add a contact to a customer list in google ads. note: it takes 6 to 12 hours for changes to be reflected in the customer list."
        },
        {
          "name": "create_customer_list",
          "description": "Createcustomerlist tool will create a customer list in google ads."
        },
        {
          "name": "get_campaign_by_id",
          "description": "Getcampaignbyid tool will return details of a campaign in google ads."
        },
        {
          "name": "get_campaign_by_name",
          "description": "Getcampaignbyname tool will run a sql getcampaignbyname in google ads."
        },
        {
          "name": "get_customer_lists",
          "description": "Getcustomerlists tool will list all customer lists in google ads."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/googleads/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"googleads\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GOOGLEADS])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "googleads"
    },
    "pagerduty": {
      "name": "Pagerduty",
      "slug": "pagerduty",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "pagerduty_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "read,write",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.pagerduty.com",
                  "description": "The API base URL for PagerDuty (default: https://api.pagerduty.com).",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        },
        {
          "name": "pagerduty_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your PagerDuty API key, obtained from the PagerDuty console.",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.pagerduty.com",
                  "description": "The API base URL for PagerDuty (default: https://api.pagerduty.com).",
                  "required": false
                }
              ]
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Integrate PagerDuty to manage incidents, schedules, and alerts directly from your application.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/pagerduty.png",
        "app_url": "https://www.pagerduty.com",
        "categories": [
          {
            "name": "Developer Tools & DevOps",
            "slug": "developer-tools-&-devops"
          }
        ],
        "triggers_count": 0,
        "tools_count": 354
      },
      "deprecated": {
        "toolkitId": "4bad90c5-5505-498a-9c07-9275ee2e44a7"
      },
      "actions": [
        {
          "name": "create_new_webhook_subscription",
          "description": "Creates a new webhook subscription in pagerduty to receive specific event notifications. this endpoint allows users to set up automated notifications for various incident-related events, such as triggers, acknowledgments, and resolutions. the webhook can be configured to filter events by service, team, or account-wide, and supports custom http headers for enhanced integration capabilities. use this when you need to integrate pagerduty's real-time incident updates with external systems or workflows. note that the webhook's secret for payload verification is only provided in the initial creation response and cannot be retrieved later."
        },
        {
          "name": "fetch_escalation_polices_list",
          "description": "Retrieves a list of escalation policies configured in the pagerduty account. this endpoint allows users to access detailed information about how incidents are escalated within their organization, including the sequence of notifications and assignments for different teams or individuals. it's particularly useful for reviewing and auditing the incident response process, ensuring that critical alerts are properly routed and escalated. the endpoint provides a comprehensive view of all escalation policies, which is essential for maintaining an effective incident management strategy. however, it does not modify any existing policies or create new ones; it's purely for retrieval and review purposes."
        },
        {
          "name": "fetch_incident_list",
          "description": "Retrieves a list of incidents from pagerduty based on specified criteria. this endpoint allows users to fetch multiple incidents, making it useful for incident management, reporting, and analysis. it supports filtering by status and date range, as well as pagination for handling large result sets. the endpoint is particularly valuable for obtaining an overview of recent or ongoing incidents, tracking incident trends, or integrating pagerduty incident data into external systems or dashboards. note that while this endpoint provides a summary of incidents, it may not include full details for each incident; separate api calls might be necessary to fetch comprehensive information for individual incidents."
        },
        {
          "name": "get_alerts_by_incident_id",
          "description": "Retrieves all alerts associated with a specific incident in pagerduty. this endpoint allows users to fetch detailed information about the notifications and alerts that were triggered as part of an incident's lifecycle. it is particularly useful for incident postmortems, auditing purposes, or understanding the notification flow during an incident. the endpoint returns a list of alerts, which may include information such as alert creation time, alert status, and the targets (users or services) that received the notifications. it should be used when detailed alert information for a known incident is required, but it will not provide information about the incident itself beyond its associated alerts."
        },
        {
          "name": "retrieve_list_of_services",
          "description": "Retrieves a list of services configured in the pagerduty account. this endpoint allows you to fetch details about various services set up for incident management and alerting. it's particularly useful for getting an overview of all services, their configurations, and associated teams or escalation policies. the endpoint supports filtering, sorting, and pagination to manage large sets of services efficiently. use this when you need to audit existing services, prepare for bulk updates, or integrate service information into other systems. note that the response may not include full details of each service, and separate api calls might be necessary to fetch comprehensive information for individual services."
        },
        {
          "name": "retrieve_maintenance_windows",
          "description": "Retrieves a list of maintenance windows from the pagerduty incident management platform. maintenance windows are scheduled periods during which alerts and notifications for specified services are suppressed to allow for system maintenance or updates without triggering unnecessary incidents. this endpoint should be used to get an overview of all maintenance windows, their schedules, and affected services. it supports filtering by team, service, and search query, as well as pagination for handling large result sets. the endpoint is particularly useful for reviewing upcoming maintenance schedules, auditing past maintenance windows, or integrating maintenance information into external systems or dashboards."
        },
        {
          "name": "retrieve_users_list",
          "description": "Retrieves a list of users from the pagerduty system. this endpoint allows you to fetch information about multiple users in your pagerduty account, which can be useful for user management, generating reports, or integrating user data with other systems. the response typically includes basic information about each user, such as their id, name, email, and role. use query parameters to filter, paginate, or search for specific users. this endpoint is ideal for bulk operations or when you need an overview of your pagerduty user base. note that the results may be paginated, so multiple calls might be necessary to retrieve all users for large accounts."
        },
        {
          "name": "update_service_by_id",
          "description": "Updates an existing service in pagerduty with the provided configuration. this endpoint allows you to modify various aspects of a service, such as its name, description, escalation policy, incident urgency rules, and alert grouping settings. use this when you need to change the behavior or properties of an existing service. the endpoint requires the service id and accepts a 'service' object containing the updated configuration. note that some properties (like 'id' and 'created at') are read-only and cannot be modified. certain advanced features, such as alert grouping and auto-pause notifications, may only be available on specific pagerduty plans."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/pagerduty/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"pagerduty\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.PAGERDUTY])",
      "metadata": {
        "totalDownloads": "173",
        "activeUsers": "29",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "pagerduty"
    },
    "finage": {
      "name": "Finage",
      "slug": "finage",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "finage_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "finage_api_key",
                  "displayName": "Finage API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Finage API key",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.finage.co.uk"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-11T19:43:11.567Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Finage provides secure RESTful APIs for real-time and historical financial market data covering stocks, forex, cryptocurrencies, indices, ETFs, and commodities.",
        "logo": "https://finage.co.uk/favicon.ico",
        "app_url": "https://finage.co.uk",
        "categories": [
          {
            "name": "Finance",
            "slug": "finance"
          },
          {
            "name": "Market Data",
            "slug": "market-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 10
      },
      "deprecated": {
        "toolkitId": "75d8d0ed-e04c-45a6-87fc-a492b3e08711"
      },
      "actions": [
        {
          "name": "get_stock_end_of_day_data",
          "description": "This tool retrieves the end-of-day data for a specific stock symbol. it provides the opening price, highest price, lowest price, closing price, trading volume, and timestamp for the most recent completed trading day, making it essential for investors and analysts seeking daily summary data without intraday details."
        },
        {
          "name": "get_stock_historical_data",
          "description": "This tool will fetch historical daily stock data for a given stock symbol between specified dates. it provides ohlcv data (open, high, low, close, volume) and is independent, requiring only the stock symbol, date range inputs, and authentication."
        },
        {
          "name": "get_stock_last_quote",
          "description": "This tool fetches the latest quote information for a specific stock symbol, providing real-time bid and ask prices, along with their respective sizes and a timestamp. it is essential for trading and market analysis, fetching a json object with details like symbol, ask, bid, asize, bsize, and timestamp."
        },
        {
          "name": "get_stock_market_aggregates",
          "description": "This tool retrieves aggregated ohlcv (open, high, low, close, volume) data for stocks over specified time periods. it allows users to provide parameters such as stock symbol, time multiplier, aggregation period, start date, and end date to obtain market aggregates."
        },
        {
          "name": "get_stock_market_snapshot",
          "description": "This tool provides a comprehensive snapshot of the us stock market data, allowing users to get the latest quotes and trades for multiple stocks in a single api request. it is ideal as the first tool because it offers broad market coverage, does not require resource ids or external dependencies, and can be used independently with just api authentication."
        },
        {
          "name": "get_stock_market_status",
          "description": "This tool retrieves the current market status for various stock exchanges by determining if markets are open or closed. it requires an api key and returns details such as the market type, server time, and next open/close times, which are essential for trade planning and automation."
        },
        {
          "name": "get_stock_previous_close",
          "description": "This tool retrieves the previous day's closing data for a specific stock symbol. it provides essential trading information including the opening price, highest price, lowest price, closing price, trading volume, and timestamp for the previous trading day. it complements other finage tools by offering detailed previous day data, which is useful for computing day-over-day change and informing daily trading analysis."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/finage/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"finage\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.FINAGE])",
      "metadata": {
        "totalDownloads": "5",
        "activeUsers": "1",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "finage"
    },
    "fomo": {
      "name": "Fomo",
      "slug": "fomo",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "fomo_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "auth_token",
                  "displayName": "Fomo Auth Token",
                  "type": "string",
                  "default": null,
                  "description": "The authentication token required for accessing the Fomo API. Obtain this token from your Fomo dashboard under Settings > Site for your website.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.fomo.com/api/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-10T20:50:11.570Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Fomo is a social proof marketing platform that displays real-time user activity notifications on websites to build trust and increase conversions.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/fomo.png",
        "app_url": "https://fomo.com",
        "categories": [
          {
            "name": "marketing",
            "slug": "marketing"
          },
          {
            "name": "notifications",
            "slug": "notifications"
          },
          {
            "name": "social proof",
            "slug": "social-proof"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "ed3caabf-5bfc-4e7c-a68c-b5e15dccac82"
      },
      "actions": [
        {
          "name": "get_fomo_events",
          "description": "This tool retrieves a list of all events from your fomo application. the endpoint is self-contained and doesn't require any external resource ids, making it independently executable. authentication is handled through the api token."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/fomo/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"fomo\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.FOMO])",
      "metadata": {
        "totalDownloads": "4",
        "activeUsers": "12",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "fomo"
    },
    "bannerbear": {
      "name": "Bannerbear",
      "slug": "bannerbear",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "bannerbear_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.bannerbear.com",
                  "description": "The base URL for Bannerbear API requests.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "apiSecret",
                  "displayName": "API Secret",
                  "type": "string",
                  "default": null,
                  "description": "Your Bannerbear API secret for authentication.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.bannerbear.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Bannerbear offers an automated image and video generation API, allowing businesses to create graphics, social media visuals, and marketing collateral with customizable templates at scale",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//bannerbear-logo.jpg",
        "app_url": "https://www.bannerbear.com/",
        "categories": [
          {
            "name": "Workflow Automation",
            "slug": "workflow-automation"
          },
          {
            "name": "Design & Creative Tools",
            "slug": "design-&-creative-tools"
          }
        ],
        "triggers_count": 0,
        "tools_count": 8
      },
      "deprecated": {
        "toolkitId": "35270dd8-161f-4ead-8a75-63d1bc0ef269"
      },
      "actions": [
        {
          "name": "get_account_info",
          "description": "This tool allows you to check your bannerbear account status, including quota levels and current usage. the endpoint returns information about your account status, paid plan, api usage, and quota."
        },
        {
          "name": "get_fonts",
          "description": "This tool retrieves a list of all available fonts in bannerbear. the fonts are categorized into serif, sans serif, novelty, international, and custom, and can be used to verify font availability prior to creating or modifying images."
        },
        {
          "name": "get_signed_bases",
          "description": "This tool retrieves a list of signed bases for a specific template. signed bases are used to generate on-demand images using encrypted url parameters. the endpoint returns a list of base urls that can be used with the signed url feature."
        },
        {
          "name": "get_template_set",
          "description": "This tool retrieves detailed information about a specific template set using its unique identifier (uid). template sets are sets of templates that you group together in the bannerbear dashboard. it provides comprehensive details about the template set including its name, available modifications, and the list of templates inside the set."
        },
        {
          "name": "join_pdfs",
          "description": "This tool allows users to merge multiple pdf files into a single pdf document by accepting an array of pdf urls, sending a post request to the bannerbear api, and returning the unique identifier, status, and url of the merged pdf."
        },
        {
          "name": "list_images",
          "description": "Lists all images inside a bannerbear project. this endpoint allows you to retrieve a paginated list of all images that have been created in your project."
        },
        {
          "name": "list_templates",
          "description": "This action retrieves a list of all templates available in your bannerbear project. it returns an array of template objects including properties like uid, name, dimensions, creation and update timestamps, template type, preview url, and modifications. the tool is used for listing templates, retrieving template uids for subsequent actions such as image or video creation, and managing project templates."
        },
        {
          "name": "list_videos",
          "description": "This action retrieves a list of all videos created in your bannerbear account. it returns an array of video objects including properties like uid, status, timestamps, video and preview urls, as well as template and modification details. the tool is used for listing videos, monitoring video status, and managing project videos."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/bannerbear/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"bannerbear\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BANNERBEAR])",
      "metadata": {
        "totalDownloads": "34",
        "activeUsers": "7",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "bannerbear"
    },
    "share_point": {
      "name": "Share point",
      "slug": "share_point",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "microsoft_sharepoint_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "https://{{site_name}}.sharepoint.com/.default,offline_access",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "site_name",
                  "displayName": "SharePoint Site Name",
                  "type": "string",
                  "default": null,
                  "description": "The name of your SharePoint site (e.g., sites/mysite)",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{site_name}}.sharepoint.com/_api"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-15T10:26:49.987Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "SharePoint is a Microsoft platform for document management and intranets, enabling teams to collaborate, store, and organize content securely and effectively",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/sharepoint-icon.svg",
        "app_url": "https://www.microsoft.com/en-in/microsoft-365/sharepoint/collaboration/",
        "categories": [
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          }
        ],
        "triggers_count": 0,
        "tools_count": 6
      },
      "deprecated": {
        "toolkitId": "ad9b2d86-2792-4353-a0bf-1f1fadd9f973"
      },
      "actions": [
        {
          "name": "sharepoint_create_folder",
          "description": "Creates a new folder in sharepoint using the rest api."
        },
        {
          "name": "sharepoint_create_list",
          "description": "Creates a new list in sharepoint using the rest api."
        },
        {
          "name": "sharepoint_create_list_item",
          "description": "Creates a new item in a sharepoint list."
        },
        {
          "name": "sharepoint_create_user",
          "description": "Creates a new user in sharepoint."
        },
        {
          "name": "sharepoint_find_user",
          "description": "Finds a user in both microsoft graph and sharepoint to verify their existence and status."
        },
        {
          "name": "sharepoint_remove_user",
          "description": "Removes a user from sharepoint. will not fail if user doesn't exist."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/share_point/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"share_point\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SHARE_POINT])",
      "metadata": {
        "totalDownloads": "180",
        "activeUsers": "38",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "share_point"
    },
    "contentful": {
      "name": "Contentful",
      "slug": "contentful",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "contentful_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "content_management_manage,content_management_read",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.contentful.com",
                  "description": "The base URL for the Contentful API, e.g. https://api.contentful.com for global customers or https://api.eu.contentful.com for EU data residency customers",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        },
        {
          "name": "contentful_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "access_token",
                  "displayName": "Content Delivery API Access Token",
                  "type": "string",
                  "default": null,
                  "description": "The access token for the Contentful Content Delivery API",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://cdn.contentful.com",
                  "description": "The base URL for the Contentful Content Delivery API, e.g. https://cdn.contentful.com for global customers or https://cdn.eu.contentful.com for EU data residency customers",
                  "required": false
                }
              ]
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Contentful provides a content platform with APIs for managing and\n    delivering content to apps and websites.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//contentful-logo.png",
        "app_url": "https://www.contentful.com/",
        "categories": [
          {
            "name": "Developer Tools & DevOps",
            "slug": "developer-tools-&-devops"
          }
        ],
        "triggers_count": 0,
        "tools_count": 3
      },
      "deprecated": {
        "toolkitId": "d2220adc-53b9-43ab-8ffa-a116495e5a60"
      },
      "actions": [
        {
          "name": "get_space",
          "description": "Retrieves details of a specific space by its id. this action is used to get information about a single space in contentful."
        },
        {
          "name": "list_spaces",
          "description": "Lists all spaces that the authenticated user has access to in contentful. this is a fundamental operation needed before performing any other content management actions since most operations require a space id."
        },
        {
          "name": "update_space",
          "description": "Updates the name of a specific space. notes: - the version number is required to ensure you're updating the latest version of the space. - you can get the current version from the sys.version field when fetching space details. - only the name of the space can be updated."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/contentful/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"contentful\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CONTENTFUL])",
      "metadata": {
        "totalDownloads": "32",
        "activeUsers": "3",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "contentful"
    },
    "close": {
      "name": "Close",
      "slug": "close",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "close_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.close.com"
          }
        },
        {
          "name": "close_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "base64_encoded_api_key",
                  "displayName": "Base64 Encoded API Key (api_key:)",
                  "type": "string",
                  "default": null,
                  "description": "The base64-encoded string of the API key followed by a colon, used in the 'Authorization' header.",
                  "required": true
                }
              ],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Close API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key used for authenticating requests to the Close API.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.close.com/api/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Close is a CRM platform designed to help businesses manage and streamline their sales processes, including calling, email automation, and predictive dialers.",
        "logo": "https://www.close.com/logo.png",
        "app_url": "https://www.close.com/",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Sales Automation",
            "slug": "sales-automation"
          },
          {
            "name": "Email Automation",
            "slug": "email-automation"
          }
        ],
        "triggers_count": 0,
        "tools_count": 6
      },
      "deprecated": {
        "toolkitId": "e1008e59-e35f-4d77-8c65-54c3a51765e9"
      },
      "actions": [
        {
          "name": "close_create_sms",
          "description": "This tool creates a new sms message in close. the tool allows sending immediate sms messages or logging received sms messages using the provided phone numbers and message content. it includes parameters such as local phone, remote phone, text, status, and source."
        },
        {
          "name": "create_call",
          "description": "Creates a new call record in close.com. this tool allows you to log both inbound and outbound calls associated with a lead, supporting parameters such as lead id, direction, and optional support for contact id, phone, duration, note, recording url, and user id."
        },
        {
          "name": "create_lead",
          "description": "This tool creates a new lead in close crm. it allows users to create a lead with basic company information and optional contact details, including company name, description, website url, lead status, contacts, and addresses. it operates by sending a request to the api endpoint /lead/ on the close crm platform."
        },
        {
          "name": "create_task",
          "description": "This tool creates a new task in close.com. tasks are used to track to-do items and can be associated with leads. the tool will create a task with the specified parameters using the provided text, due date, and is complete flags."
        },
        {
          "name": "delete_call",
          "description": "This tool allows you to delete a specific call activity in close.com. it is useful for removing incorrectly logged calls or cleaning up call records. the action deletes a call activity using its unique call id and cannot be undone."
        },
        {
          "name": "get_note",
          "description": "This tool retrieves a list of note activities from close. it allows users to fetch notes with optional filtering parameters, including filtering by lead id, user id, and date ranges. the tool returns details such as note content, creation and update dates, and any associated attachments."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/close/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"close\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CLOSE])",
      "metadata": {
        "totalDownloads": "10",
        "activeUsers": "2",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "close"
    },
    "ably": {
      "name": "Ably",
      "slug": "ably",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "ably_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "API key used for authenticating requests to the Ably API.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://rest.ably.io"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Ably is a real-time messaging platform helping developers build live features, including chat and data synchronization, with global scalability and robust reliability for modern applications",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/ably.svg",
        "app_url": "https://ably.com",
        "categories": [
          {
            "name": "Developer Tools & DevOps",
            "slug": "developer-tools-&-devops"
          }
        ],
        "triggers_count": 0,
        "tools_count": 11
      },
      "deprecated": {
        "toolkitId": "c564b657-f52e-4e3b-aba3-0e2c93b32580"
      },
      "actions": [
        {
          "name": "batch_presence",
          "description": "This tool enables querying the presence states of multiple channels in a single api request. the api retrieves the member presence details of the specified channels in parallel."
        },
        {
          "name": "batch_presence_history",
          "description": "This tool enables querying presence history for multiple channels in a single api request. it uses the get endpoint at https://rest.ably.io/presence to retrieve the member presence history details of the specified channels in parallel."
        },
        {
          "name": "create_channel",
          "description": "Creates a new channel or retrieves an existing channel in ably. this tool allows you to programmatically create and initialize channels for real-time messaging. since ably creates channels implicitly when first used, this action publishes an empty initialization message to create/activate the channel."
        },
        {
          "name": "delete_channel_subscription",
          "description": "This tool allows you to unsubscribe devices or clients from push notifications for specific channels. the operation is asynchronous, so immediate requests after deletion may briefly still return the subscription."
        },
        {
          "name": "get_channel_details",
          "description": "This tool retrieves metadata and details for a specific channel in ably. it returns a channeldetails object containing information about the channel's status, occupancy, and other metadata. the endpoint provides visibility into channel activity, including metrics such as connections, presence, publishers, and subscribers, and requires appropriate permissions."
        },
        {
          "name": "get_channel_history",
          "description": "This tool retrieves the message history for a specified ably channel. it uses the get /channels/{channelid}/messages endpoint to return a paginated list of messages in chronological order, subject to parameters such as 'channelid', 'limit', 'direction', 'start', and 'end'. the tool is useful for auditing, recovering missed messages, analyzing channel activity, and debugging message flows. authentication is required via basic or token authentication."
        },
        {
          "name": "get_presence_history",
          "description": "This tool retrieves the history of presence messages for a specified channel in ably. it allows you to query presence events on a channel within a given time period."
        },
        {
          "name": "get_service_time",
          "description": "This tool retrieves the current server time from ably's service in milliseconds since the epoch. it is particularly useful for time synchronization and generating valid tokenrequest timestamps to prevent replay attacks. the endpoint supports multiple content types, handles http errors, network issues, and is a fundamental tool for ensuring accurate timing in ably applications."
        },
        {
          "name": "get_stats",
          "description": "This tool retrieves your application's usage statistics from ably. the stats endpoint returns a paginated list of your application's usage statistics by minute, hour, day, or month. it supports optional parameters such as start, end, direction, limit, and unit to filter and format the returned data. the stats include metrics for: - message counts and data transferred - connection counts - channel usage - api request counts - push notification metrics - token request counts"
        },
        {
          "name": "list_push_channel_subscriptions",
          "description": "This tool retrieves a list of all push notification channel subscriptions. it allows you to view all active push notification subscriptions for channels in your ably application. allows filtering by channel, deviceid, and clientid, supports pagination with limit parameter, and returns detailed push notification subscription information including channel, deviceid, and clientid."
        },
        {
          "name": "publish_message_to_channel",
          "description": "This tool will allow users to publish a message to a specified ably channel using a post request. it covers the essentials like channel name, message data, optional event name/type, and additional metadata for push notifications. it is an independent and fundamental operation within ably's real-time messaging platform."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/ably/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"ably\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ABLY])",
      "metadata": {
        "totalDownloads": "31",
        "activeUsers": "3",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "ably"
    },
    "more_trees": {
      "name": "More trees",
      "slug": "more_trees",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "more_trees_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your More Trees API key",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://user-management-service.platform.moretrees.eco/user-management-api/external"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-24T18:11:15.864Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "More Trees is a sustainability-focused platform planting trees on behalf of individuals or businesses aiming to offset carbon footprints and support reforestation",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//more-trees.jpg",
        "app_url": "https://www.moretrees.eco/",
        "categories": [
          {
            "name": "Other / Miscellaneous",
            "slug": "other-/-miscellaneous"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "0d079e8b-592f-4b3a-b0fa-07066b30a442"
      },
      "actions": [
        {
          "name": "get_total_carbon_offset",
          "description": "This tool retrieves the total carbon offset and other forest-related information for the authenticated user. it provides comprehensive data about the user's forest, including the total co₂ captured, number of trees planted, gifted, and received. authentication is provided via an api key in the headers (x-api-key) and no additional parameters are needed as it fetches data for the authenticated user."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/more_trees/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"more_trees\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.MORE_TREES])",
      "metadata": {
        "totalDownloads": "6",
        "activeUsers": "9",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "more_trees"
    },
    "recallai": {
      "name": "Recallai",
      "slug": "recallai",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "recallai_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Stripe API key for authentication. Obtain it from your Stripe Dashboard under Developers > API Keys.",
                  "required": true
                },
                {
                  "name": "region",
                  "displayName": "Region",
                  "type": "string",
                  "default": null,
                  "description": "Your Stripe API key for authentication. Obtain it from your Stripe Dashboard under Developers > API Keys.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{region}}.recall.ai/api/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-02-05T14:03:04.563Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Recall.ai provides a single API for meeting bots on every platform like Zoom, Google Meet, Microsoft Teams and more.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/recall.svg",
        "app_url": "https://www.recall.ai/",
        "categories": [
          {
            "name": "Finance & Accounting",
            "slug": "finance-&-accounting"
          },
          {
            "name": "E-commerce",
            "slug": "e-commerce"
          }
        ],
        "triggers_count": 0,
        "tools_count": 8
      },
      "deprecated": {
        "toolkitId": "bbe74686-c270-408e-bf02-21a3a64398e6"
      },
      "actions": [
        {
          "name": "create_bot",
          "description": "Create a new bot."
        },
        {
          "name": "delete_bot",
          "description": "Get list of chat messages read by the bot in the meeting(excluding messages sent by the bot itself)."
        },
        {
          "name": "list_bots",
          "description": "List all bots"
        },
        {
          "name": "list_chat_messages",
          "description": "Get list of chat messages read by the bot in the meeting(excluding messages sent by the bot itself)."
        },
        {
          "name": "remove_bot_from_call",
          "description": "Removes the bot from the meeting. this is irreversable."
        },
        {
          "name": "retrieve_bot",
          "description": "Get a bot instance."
        },
        {
          "name": "start_recording",
          "description": "Instructs the bot to start recording the meeting. this will restart the current recording if one is already in progress."
        },
        {
          "name": "stop_recording",
          "description": "Instructs the bot to end the current recording."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/recallai/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"recallai\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.RECALLAI])",
      "metadata": {
        "totalDownloads": "47",
        "activeUsers": "13",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "recallai"
    },
    "apaleo": {
      "name": "Apaleo",
      "slug": "apaleo",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "apaleo_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "offline_access,account.manage,account.suspend,accounting.read,authorizations.manage,authorizations.read,availability.manage,availability.read,charges.delete,companies.manage,companies.read,depositItems.manage,deposits.manage,deposits.read,folios.manage,folios.payment-with-charges,folios.read,invoices.manage,invoices.read,logs.read,maintenances.manage,maintenances.read,offer-index.read,offers.read,operations.change-room-state,operations.trigger-night-audit,payment-accounts.manage,payment-accounts.read,payments.manage,payments.read,prepayment-notices.read,rateplans.read-corporate,rateplans.read-negotiated,rates.manage,rates.read,reports.read,reservations.force-manage,reservations.manage,reservations.read,routings.create,routings.manage,routings.read,servicegroups.create,servicegroups.manage,servicegroups.read,setup.manage,setup.read",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.apaleo.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-08-20T11:35:40.894Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Apaleo is a cloud-based property management platform handling reservations, billing, and daily operations for hospitality businesses",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/apaleo.png",
        "app_url": "https://apaleo.com​",
        "categories": [
          {
            "name": "Scheduling & Booking",
            "slug": "scheduling-&-booking"
          },
          {
            "name": "Finance & Accounting",
            "slug": "finance-&-accounting"
          }
        ],
        "triggers_count": 0,
        "tools_count": 29
      },
      "deprecated": {
        "toolkitId": "a264b9c9-8164-4e78-9932-865e51ebcaa6"
      },
      "actions": [
        {
          "name": "creates_a_property",
          "description": "Use this call to create a new property.<br>you must have at least one of these scopes: 'properties.create, setup.manage'."
        },
        {
          "name": "create_a_unit",
          "description": "Use this call to create a new unit.<br>you must have at least one of these scopes: 'units.create, setup.manage'."
        },
        {
          "name": "get_a_properties_list",
          "description": "Get the list of properties.<br>you need to be authorized (no particular scope required)"
        },
        {
          "name": "get_a_unit",
          "description": "Get a unit by id.<br>you must have at least one of these scopes: 'units.read, setup.read, setup.manage'."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/apaleo/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"apaleo\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.APALEO])",
      "metadata": {
        "totalDownloads": "53",
        "activeUsers": "4",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "apaleo"
    },
    "crustdata": {
      "name": "Crustdata",
      "slug": "crustdata",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "crustdata_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Auth Token",
                  "type": "string",
                  "default": null,
                  "description": "Enter the Auth Token for your Crustdata account",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.crustdata.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-03-19T13:46:57.060Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "CrustData is an AI-powered data intelligence platform that provides real-time company and people data via APIs and webhooks, empowering B2B sales teams, AI SDRs, and investors to act on live signals",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/crustdata.png",
        "app_url": "https://crustdata.com/",
        "categories": [
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          }
        ],
        "triggers_count": 0,
        "tools_count": 14
      },
      "deprecated": {
        "toolkitId": "ac8f570d-4a4a-43f7-8b80-d051d6312b0e"
      },
      "actions": [
        {
          "name": "enrich_person_screener",
          "description": "The screener person enrich endpoint enriches person data by providing additional information based on the given query. it allows users to retrieve detailed information about individuals, which can be useful for various purposes such as customer profiling, lead generation, or data verification. this endpoint should be used when you need to augment existing person data with additional details or verify information about a specific individual. the enrichment process draws from crustdata's extensive database and real-time data sources to provide up-to-date and comprehensive information. users can customize the response by specifying the exact fields they need, optimizing data transfer and processing. note that the availability and accuracy of enriched data may vary depending on the input provided and the information available in crustdata's systems."
        },
        {
          "name": "screener_company_information",
          "description": "The getcompanyscreener endpoint allows users to search and filter companies based on various criteria such as headcount, growth rate, funding, and more. it provides a powerful way to identify specific companies that meet predefined conditions. this endpoint is particularly useful for tasks like lead generation, market research, and competitive analysis. the endpoint returns a list of companies matching the specified criteria, with each company entry containing key information such as name, industry, headcount, funding details, and growth metrics. users can customize their search using multiple filters, sort the results, and paginate through large result sets. note that the accuracy of the data depends on crustdata's real-time data collection and update frequency."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/crustdata/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"crustdata\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CRUSTDATA])",
      "metadata": {
        "totalDownloads": "19",
        "activeUsers": "3",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "crustdata"
    },
    "brandfetch": {
      "name": "Brandfetch",
      "slug": "brandfetch",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "API Key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Host",
                  "type": "string",
                  "default": "https://api.brandfetch.io/v2  ",
                  "description": "The API base URL for Brandfetch.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your API Key.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.brandfetch.io/v2"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Brandfetch offers an API that retrieves company logos, brand colors, and other visual assets, helping marketers and developers maintain consistent branding across apps",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/brandfetch-logo.png",
        "app_url": "https://brandfetch.com",
        "categories": [
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          }
        ],
        "triggers_count": 0,
        "tools_count": 6
      },
      "deprecated": {
        "toolkitId": "37d04542-cf0b-4eea-ba01-8c4b6a55fa1c"
      },
      "actions": [
        {
          "name": "get_brand_info",
          "description": "This tool retrieves comprehensive brand information including logos, colors, fonts, and company details for any brand using their domain name, brand id, isin, or stock ticker symbol. it provides access to a brand's complete visual identity and company information."
        },
        {
          "name": "get_company_info",
          "description": "This action retrieves detailed company information for a given brand identifier. while the brandfetch get brand info tool provides general brand information, this tool specifically focuses on extracting and returning the company-related firmographic data from the response."
        },
        {
          "name": "get_logo",
          "description": "This tool fetches the latest logo for any brand using brandfetch's brand api. it provides access to high-quality, up-to-date logos with customizable dimensions. the tool supports different logo types (icon, logo, symbol) and themes (light, dark)."
        },
        {
          "name": "get_transaction_info",
          "description": "This tool converts payment transaction labels into detailed merchant brand information. it takes a transaction label (like what you see on your credit card statement) and returns comprehensive brand data (including logos, colors, fonts, and company information). it is useful for identifying merchants and enriching transaction data with detailed brand information."
        },
        {
          "name": "identify_merchant",
          "description": "This tool identifies merchant brands from raw transaction data in a single call. it processes unstructured payment text (e.g., credit card transaction descriptions), maps it to a domain, and returns comprehensive brand details including name, logo, domain, and industry information."
        },
        {
          "name": "search_brands",
          "description": "This tool allows searching for brands by name and returns matching brand information. it enables searching and matching brand names to their corresponding urls and icons, providing rich autocomplete experiences."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/brandfetch/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"brandfetch\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BRANDFETCH])",
      "metadata": {
        "totalDownloads": "26",
        "activeUsers": "10",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "brandfetch"
    },
    "canva": {
      "name": "Canva",
      "slug": "canva",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "canva_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "app:read,app:write,asset:read,asset:write,brandtemplate:content:read,brandtemplate:meta:read,comment:read,comment:write,design:content:read,design:content:write,design:meta:read,design:permission:read,design:permission:write,folder:read,folder:write,folder:permission:read,folder:permission:write,profile:read",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.canva.com/rest"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-05T07:35:05.286Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Canva offers a drag-and-drop design suite for creating social media graphics, presentations, and marketing materials with prebuilt templates and a vast element library",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/canva.jpeg",
        "app_url": "https://www.canva.com",
        "categories": [
          {
            "name": "Design & Creative Tools",
            "slug": "design-&-creative-tools"
          }
        ],
        "triggers_count": 0,
        "tools_count": 32
      },
      "deprecated": {
        "toolkitId": "1cb7aae9-87a2-4e53-a485-60c8bc19c014"
      },
      "actions": [
        {
          "name": "revoke_oauth_tokens",
          "description": "Revoke a refresh token to end its lineage and user consent, requiring re-authentication. authenticate using either basic access with base64-encoded credentials or body parameters with client id and secret."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/canva/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"canva\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CANVA])",
      "metadata": {
        "totalDownloads": "603",
        "activeUsers": "180",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "canva"
    },
    "dailybot": {
      "name": "Dailybot",
      "slug": "dailybot",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "dailybot_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your DailyBot API key",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.dailybot.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-06T14:19:58.203Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "DailyBot simplifies team collaboration and tasks with chat-based standups, reminders, polls, and integrations, streamlining workflow automation in popular messaging platforms",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//dailybot.jpg",
        "app_url": "https://www.dailybot.com/",
        "categories": [
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          },
          {
            "name": "Workflow Automation",
            "slug": "workflow-automation"
          }
        ],
        "triggers_count": 0,
        "tools_count": 6
      },
      "deprecated": {
        "toolkitId": "9476368d-2a91-4b76-92a0-fc92c817e970"
      },
      "actions": [
        {
          "name": "find_user",
          "description": "This tool allows you to find and retrieve information about a specific user in dailybot. it uses the provided user uuid to lookup the user and returns detailed information including the user's uuid, full name, image, username, occupation, birth date, chat platform data, and organization details."
        },
        {
          "name": "find_workflow",
          "description": "This tool allows users to find a specific workflow within dailybot by providing the workflow name. it returns detailed information including the workflow id, workflow name, workflow status, workflow type, created at, and updated at. it is especially useful to locate a workflow before running or modifying it."
        },
        {
          "name": "get_users",
          "description": "This tool retrieves a list of all users within the organization from dailybot. it doesn't require any input parameters other than authentication. the returned json contains user details including uuid, active status, full name, and organizational data."
        },
        {
          "name": "get_workflows",
          "description": "This tool retrieves a list of all workflows that the authenticated user has access to in dailybot. it can be executed independently with only the authentication required, and it supports optional pagination parameters (page, per page) to refine the response."
        },
        {
          "name": "give_kudos",
          "description": "This tool allows giving kudos to one or multiple users in dailybot. kudos can be given either on behalf of dailybot or the api key owner."
        },
        {
          "name": "send_message",
          "description": "This tool allows sending a message through dailybot to either specific users or channels/rooms. the message can include markdown formatting."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/dailybot/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"dailybot\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.DAILYBOT])",
      "metadata": {
        "totalDownloads": "31",
        "activeUsers": "4",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "dailybot"
    },
    "linkhut": {
      "name": "Linkhut",
      "slug": "linkhut",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "linkhut_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "posts:read,posts:write,tags:read,tags:write",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.ln.ht/v1",
                  "description": "The base URL for Linkhut API requests.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "LinkHut manages bookmarked links in a minimalistic, shareable interface, helping teams organize URLs and track references in one place",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/linkhut.svg",
        "app_url": "https://linkhut.org/",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 5
      },
      "deprecated": {
        "toolkitId": "6cb4e72e-bb01-4b7c-b532-a9dcae32b45f"
      },
      "actions": [
        {
          "name": "add_bookmark",
          "description": "Adds a new bookmark to linkhut. the bookmark can be marked as private/public and read/unread, with optional tags and notes."
        },
        {
          "name": "delete_bookmark",
          "description": "This tool allows users to delete a bookmark from their linkhut account by providing the bookmark url. it operates independently and only requires the url parameter to identify and remove the bookmark."
        },
        {
          "name": "get_all_tags",
          "description": "Retrieves a list of all tags and their usage counts for the authenticated user. no additional parameters required besides authentication."
        },
        {
          "name": "get_bookmarks",
          "description": "This tool retrieves all bookmarks from the user's linkhut account. it makes a get request to the api endpoint and handles authentication. the tool returns a list of bookmarks including details such as url, title, tags, notes, and timestamp."
        },
        {
          "name": "update_bookmark",
          "description": "This tool allows users to update an existing bookmark in linkhut. the tool updates the metadata of a bookmark including its title, description, and tags."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/linkhut/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"linkhut\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.LINKHUT])",
      "metadata": {
        "totalDownloads": "13",
        "activeUsers": "1",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "linkhut"
    },
    "box": {
      "name": "Box",
      "slug": "box",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "OAUTH2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.box.com/2.0",
                  "description": "Base URL for API requests",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Cloud content management and file sharing service for businesses.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/box.svg",
        "app_url": "https://www.box.com",
        "categories": [
          {
            "name": "knowledge-base",
            "slug": "knowledge-base"
          },
          {
            "name": "storage",
            "slug": "storage"
          }
        ],
        "triggers_count": 0,
        "tools_count": 273
      },
      "deprecated": {
        "toolkitId": "1f0284f7-b34f-4f16-b530-31fcef38af6e"
      },
      "actions": [
        {
          "name": "create_box_sign_request",
          "description": "Creates a signature request. this involves preparing a document for signing and sending the signature request to signers."
        },
        {
          "name": "create_collaboration",
          "description": "Adds a collaboration for a single user or a single group to a file or folder. collaborations can be created using email address, user ids, or a group ids. if a collaboration is being created with a group, access to this endpoint is dependent on the group's ability to be invited. if collaboration is in `pending` status, the following fields are redacted: - `login` and `name` are hidden if a collaboration was created using `user id`, - `name` is hidden if a collaboration was created using `login`."
        },
        {
          "name": "create_comment",
          "description": "Adds a comment by the user to a specific file, or as a reply to an other comment."
        },
        {
          "name": "create_folder",
          "description": "Creates a new empty folder within the specified parent folder."
        },
        {
          "name": "delete_file",
          "description": "Deletes a file, either permanently or by moving it to the trash. the the enterprise settings determine whether the item will be permanently deleted from box or moved to the trash."
        },
        {
          "name": "download_file",
          "description": "Returns the contents of a file in binary format."
        },
        {
          "name": "find_file_for_shared_link",
          "description": "Returns the file represented by a shared link. a shared file can be represented by a shared link, which can originate within the current enterprise or within another. this endpoint allows an application to retrieve information about a shared file when only given a shared link. the `shared link permission options` array field can be returned by requesting it in the `fields` query parameter."
        },
        {
          "name": "get_file_information",
          "description": "Retrieves the details about a file."
        },
        {
          "name": "get_folder_information",
          "description": "Retrieves details for a folder, including the first 100 entries in the folder. passing `sort`, `direction`, `offset`, and `limit` parameters in query allows you to manage the list of returned [folder items](r://folder--full#param-item-collection). to fetch more items within the folder, use the [get items in a folder](e://get-folders-id-items) endpoint."
        },
        {
          "name": "list_file_comments",
          "description": "Retrieves a list of comments for a file."
        },
        {
          "name": "list_items_in_folder",
          "description": "Retrieves a page of items in a folder. these items can be files, folders, and web links. to request more information about the folder itself, like its size, use the [get a folder](#get-folders-id) endpoint instead."
        },
        {
          "name": "request_access_token",
          "description": "Request an access token using either a client-side obtained oauth 2.0 authorization code or a server-side jwt assertion. an access token is a string that enables box to verify that a request belongs to an authorized session. in the normal order of operations you will begin by requesting authentication from the [authorize](#get-authorize) endpoint and box will send you an authorization code. you will then send this code to this endpoint to exchange it for an access token. the returned access token can then be used to to make box api calls."
        },
        {
          "name": "search_for_content",
          "description": "Searches for files, folders, web links, and shared files across the users content or across the entire enterprise."
        },
        {
          "name": "update_file",
          "description": "Updates a file. this can be used to rename or move a file, create a shared link, or lock a file."
        },
        {
          "name": "update_folder",
          "description": "Updates a folder. this can be also be used to move the folder, create shared links, update collaborations, and more."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/box/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"box\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BOX])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "box"
    },
    "smugmug": {
      "name": "Smugmug",
      "slug": "smugmug",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "smugmug_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key provided by SmugMug upon application approval.",
                  "required": true
                },
                {
                  "name": "api_secret",
                  "displayName": "API Secret",
                  "type": "string",
                  "default": null,
                  "description": "The API secret associated with your API key, provided by SmugMug.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.smugmug.com/api/v2"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "SmugMug is a platform for photographers to showcase, share, and sell their photos and videos.",
        "logo": "https://www.smugmug.com/favicon.ico",
        "app_url": "https://www.smugmug.com/",
        "categories": [
          {
            "name": "Photography",
            "slug": "photography"
          },
          {
            "name": "Photo Sharing",
            "slug": "photo-sharing"
          },
          {
            "name": "Online Galleries",
            "slug": "online-galleries"
          }
        ],
        "triggers_count": 0,
        "tools_count": 5
      },
      "deprecated": {
        "toolkitId": "4b7c380d-170d-44b1-8ce5-e1c6267700ac"
      },
      "actions": [
        {
          "name": "get_folder_details",
          "description": "This tool retrieves the details of a specific folder for a smugmug user using its node id.  tags=[\"important\"] creation and modification dates, node id, and optionally the uri of the album set as the highlight."
        },
        {
          "name": "get_node_details",
          "description": "This tool retrieves the details for a specific node (e.g., album, folder, page) using its unique nodeid. it uses the api endpoint get /api/v2/node/{nodeid} to fetch details such as uri, nodeid, name, type, and urlpath."
        },
        {
          "name": "get_user_profile",
          "description": "Retrieves the public profile information for a smugmug user."
        },
        {
          "name": "list_albums_in_folder",
          "description": "This tool retrieves a list of all albums within a specified user's folder on smugmug. it allows for pagination to handle large numbers of albums."
        },
        {
          "name": "list_child_nodes",
          "description": "Retrieves a list of all child nodes (albums or folders) for a specified parent node in smugmug."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/smugmug/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"smugmug\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SMUGMUG])",
      "metadata": {
        "totalDownloads": "4",
        "activeUsers": "9",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "smugmug"
    },
    "webflow": {
      "name": "Webflow",
      "slug": "webflow",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "webflow_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Webflow API key",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.webflow.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-04T09:12:18.804Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Webflow is a no-code website design and hosting platform, letting users build responsive sites, launch online stores, and maintain content without coding",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//webflow.jpeg",
        "app_url": "https://webflow.com",
        "categories": [
          {
            "name": "Design & Creative Tools",
            "slug": "design-&-creative-tools"
          },
          {
            "name": "E-commerce",
            "slug": "e-commerce"
          }
        ],
        "triggers_count": 0,
        "tools_count": 21
      },
      "deprecated": {
        "toolkitId": "4c4906f2-b62f-4989-ba22-95e24b94da01"
      },
      "actions": [
        {
          "name": "create_collection_item",
          "description": "This tool creates a new item in a specified webflow collection. it requires the collection id and field data parameters (including required name and slug) and optionally accepts an is draft flag. authentication is assumed to be provided, and the collection id can be obtained by using the webflow list collections tool."
        },
        {
          "name": "delete_collection_item",
          "description": "This tool allows you to delete a specific item from a collection in webflow. it permanently removes the item from the specified collection and complements existing collection management tools. the tool requires a collection id to identify the collection and an item id to identify the item, with an optional cms locale id parameter for handling multi-language content."
        },
        {
          "name": "get_collection",
          "description": "Retrieves a specific collection by its id from a webflow site. this endpoint returns detailed information about the collection, including its name, slug, and schema. it requires a valid collection id as a parameter and complements the webflow list collections tool for accessing specific collection details. this tool requires the 'cms:read' authentication scope."
        },
        {
          "name": "get_collection_item",
          "description": "This tool retrieves a specific item from a webflow collection. it allows users to fetch detailed information about a single collection item using its unique identifier. the tool is used to get an item's details such as its id, timestamps (lastpublished, lastupdated, createdon), archive/draft status, fielddata, and cmslocaleid. this tool requires appropriate 'cms:read' authentication scope."
        },
        {
          "name": "get_item_inventory",
          "description": "This tool retrieves the current inventory levels for a specific item in a webflow collection. it provides information about the item's inventory quantity and type (finite or infinite) and complements the webflow update item inventory action by allowing users to check inventory levels before making any updates."
        },
        {
          "name": "get_order",
          "description": "This tool retrieves detailed information about a specific order in webflow. it allows users to fetch comprehensive order details including customer information, items purchased, payment status, and shipping details. the response includes order status, customer details, billing and shipping information, items purchased, payment details, order total, timestamps, fulfillment status, and additional comments or tracking information."
        },
        {
          "name": "get_site_info",
          "description": "This tool retrieves detailed information about a specific webflow site. it includes site id, workspaceid, creation and update dates, display names, and other settings like previewurl, timezone, customdomains, and locale settings. it requires a valid 'site id' and appropriate 'sites:read' authentication scope."
        },
        {
          "name": "list_collections",
          "description": "This tool retrieves a list of all collections for a given webflow site. it uses the site id (obtained from webflow list webflow sites) to return a list of collections, each with properties such as id, name, slug, singularname, lastupdated, and fields. this tool is fundamental for working with webflow's cms and requires appropriate 'cms:read' authentication scope."
        },
        {
          "name": "list_collection_items",
          "description": "This tool retrieves a list of items from a specified collection in webflow. it supports pagination and filtering, and is essential for fetching multiple items from a collection, such as blog posts, products, or any content stored in collections."
        },
        {
          "name": "list_form_submissions",
          "description": "This tool retrieves a list of form submissions for a specific webflow site. it allows users to fetch form submission data with pagination support and optional filtering by form element id."
        },
        {
          "name": "list_orders",
          "description": "This tool retrieves a list of all orders for a specified webflow site using the get /sites/{site id}/orders endpoint. it accepts a required site id parameter and optional parameters such as status (to filter orders by their status), offset (for pagination), and limit (specifies the number of items per request). the response includes order details like order id, created on, customer info, status, total, items, shipping address, billing address, and payment info. this functionality supports ecommerce workflow management and requires the scope ecommerce:read."
        },
        {
          "name": "list_pages",
          "description": "This tool retrieves a list of all pages for a specified webflow site. it can access both static and cms-driven pages and provides information such as the page's unique identifier, name, url slug, creation and update timestamps, and publication status. it is useful for auditing site structure, building site maps, and monitoring page updates."
        },
        {
          "name": "list_webflow_sites",
          "description": "This tool retrieves a list of all webflow sites accessible to the authenticated user. it is a fundamental and independent action which only requires an authentication token and returns details for each site including site id, name, shortname, lastpublished, previewurl, timezone, and status."
        },
        {
          "name": "publish_site",
          "description": "This tool publishes a webflow site, making all staged changes live. it uses the post /sites/{site id}/publish api endpoint and requires a valid site id, with an optional domains array to specify custom domains. it is essential for deploying updates made to site content, design, or structure."
        },
        {
          "name": "refund_order",
          "description": "This tool allows you to refund a webflow e-commerce order. when executed, it reverses the stripe charge and sets the order's status to 'refunded'. it handles customer returns or order cancellations."
        },
        {
          "name": "update_collection_item",
          "description": "This tool allows updating an existing item in a webflow collection using the patch /collections/{collection id}/items/{item id} endpoint. it accepts required parameters such as collection id, item id, and fields, and optional 'live' flag and cms locale id. the update operation modifies any fields available in the collection's schema and returns the updated item along with metadata."
        },
        {
          "name": "update_item_inventory",
          "description": "This tool allows you to update the inventory levels of a specific sku item in your webflow e-commerce site by either setting the inventory quantity directly or updating it incrementally. it updates the inventory status using the patch /collections/:collection id/items/:item id/inventory endpoint and requires the 'ecommerce:write' scope."
        },
        {
          "name": "update_order",
          "description": "This tool allows updating specific fields of an existing order in webflow. it's particularly useful for managing order fulfillment details and adding internal notes."
        },
        {
          "name": "upload_asset",
          "description": "This tool allows users to upload assets (files, images, etc.) to a webflow site. it involves a two-step process: first, generating a pre-signed amazon s3 upload url by calling the webflow api, and second, uploading the file to that s3 url. the tool requires parameters such as site id, file name, file content, md5, and optionally asset folder id to correctly upload and manage assets for the specified webflow site."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/webflow/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"webflow\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.WEBFLOW])",
      "metadata": {
        "totalDownloads": "62",
        "activeUsers": "16",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "webflow"
    },
    "amcards": {
      "name": "Amcards",
      "slug": "amcards",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "amcards_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "API key used for authenticating requests to the Amcards API.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.amcards.com/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "AMCards enables users to create personalized greeting cards, automate mailing campaigns, strengthen customer relationships using a convenient online platform for individualized connections",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//amcards.svg",
        "app_url": "https://amcards.com/user/",
        "categories": [
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          }
        ],
        "triggers_count": 0,
        "tools_count": 2
      },
      "deprecated": {
        "toolkitId": "0a140da4-833f-4295-bccd-9ec5c3a18ba8"
      },
      "actions": [
        {
          "name": "get_cards",
          "description": "This tool retrieves a list of all cards associated with the authenticated account. the action is completely independent and doesn't require any external resource ids or parameters beyond authentication. it allows users to monitor, track, and manage their cards."
        },
        {
          "name": "get_contacts",
          "description": "This tool retrieves a list of contacts from amcards. it is used for managing contacts by providing details like limit, skip, and filters (e.g., last name, first name, email). the tool returns an array of contact objects containing fields such as id, first name, last name, email, created at, and updated at."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/amcards/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"amcards\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.AMCARDS])",
      "metadata": {
        "totalDownloads": "10",
        "activeUsers": "14",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "amcards"
    },
    "simplesat": {
      "name": "Simplesat",
      "slug": "simplesat",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "simplesat_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Simplesat API Token",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.simplesat.io/api/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-10T20:50:11.570Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Simplesat captures customer feedback and CSAT scores through surveys, integrating directly with helpdesk systems for real-time performance insights",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//simplesat.jpeg",
        "app_url": "https://www.simplesat.io/",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Sales & Customer Support",
            "slug": "sales-&-customer-support"
          }
        ],
        "triggers_count": 0,
        "tools_count": 2
      },
      "deprecated": {
        "toolkitId": "6fc3977c-9aee-457e-8cc3-7172cd7b149b"
      },
      "actions": [
        {
          "name": "create_or_update_customer",
          "description": "This tool creates or updates a customer in simplesat. if a customer with the provided email address already exists, their information is updated; otherwise, a new customer is created."
        },
        {
          "name": "create_or_update_team_member",
          "description": "This tool creates a new team member or updates an existing one if a team member with the same email address is found. it is an independent action that requires only basic team member information (email, first name, last name, and optionally title and phone) and does not depend on any other resource ids."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/simplesat/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"simplesat\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SIMPLESAT])",
      "metadata": {
        "totalDownloads": "8",
        "activeUsers": "2",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "simplesat"
    },
    "flutterwave": {
      "name": "Flutterwave",
      "slug": "flutterwave",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "flutterwave_secret_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "secret_key",
                  "displayName": "Secret Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Flutterwave secret key",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.flutterwave.com/v3"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-10T20:50:11.570Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Flutterwave provides APIs for making and receiving payments in various\n    currencies and countries.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//flutterwave.png",
        "app_url": "https://flutterwave.com/eu/",
        "categories": [
          {
            "name": "Finance & Accounting",
            "slug": "finance-&-accounting"
          },
          {
            "name": "E-commerce",
            "slug": "e-commerce"
          }
        ],
        "triggers_count": 0,
        "tools_count": 2
      },
      "deprecated": {
        "toolkitId": "5377c8a4-f951-429d-bc28-ff1e79f2e69c"
      },
      "actions": [
        {
          "name": "flutterwave_verify_transaction",
          "description": "Verifies the status of a flutterwave transaction using the transaction id or reference. returns detailed information about the transaction including status, amount, currency, customer details, and payment information."
        },
        {
          "name": "get_transactions",
          "description": "Get a list of transactions within a specified date range. this action fetches transaction history and monitors payment activities. the date range is optional and can be specified using from date and to date parameters."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/flutterwave/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"flutterwave\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.FLUTTERWAVE])",
      "metadata": {
        "totalDownloads": "8",
        "activeUsers": "6",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "flutterwave"
    },
    "process_street": {
      "name": "Process street",
      "slug": "process_street",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "API_KEY",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your API key for authentication. Obtain it from your Process Street settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.process.st/api/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-24T18:11:15.864Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Process Street supports creating and running checklists, SOPs, and workflows, helping teams automate recurring processes and track compliance",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//process-street-logo.png",
        "app_url": "https://www.process.st",
        "categories": [
          {
            "name": "Workflow Automation",
            "slug": "workflow-automation"
          },
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 5
      },
      "deprecated": {
        "toolkitId": "9ef7301b-0346-4432-abf8-f11400e76a0a"
      },
      "actions": [
        {
          "name": "complete_workflow_run",
          "description": "This tool marks an entire workflow run as completed in process street. it updates the workflow run's status to 'completed', distinguishing it from process street complete task which completes individual tasks."
        },
        {
          "name": "create_workflow_run",
          "description": "This tool creates a new workflow run from a specified workflow template. it is one of the most fundamental operations in process street, allowing users to initiate a new instance of a workflow. the tool requires a workflow template id and optionally allows setting a custom name, due date, and whether to enable a share link."
        },
        {
          "name": "find_data_set_rows",
          "description": "This tool allows you to search for records within a data set based on form fields. it's useful for retrieving specific records from a data set when you need to find matching entries based on certain criteria."
        },
        {
          "name": "list_workflows",
          "description": "This tool retrieves a list of all workflows available in the process street account. it is a fundamental action that allows users to view and access all their workflows, which is essential for other operations that require workflow ids. this action is important because it provides the foundation for other actions that require workflow ids as input parameters, such as creating workflow runs or managing workflow-specific tasks, thereby enabling better workflow management and automation."
        },
        {
          "name": "undelete_workflow_run",
          "description": "This tool allows you to restore a previously deleted workflow run in process street. it uses the put /v1.1/workflow-runs/{workflowrunid}/undelete endpoint to recover a workflow run within a valid recovery period. it complements the existing process street delete workflow run action by providing a data recovery option to correct deletion mistakes."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/process_street/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"process_street\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.PROCESS_STREET])",
      "metadata": {
        "totalDownloads": "17",
        "activeUsers": "7",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "process_street"
    },
    "screenshotone": {
      "name": "Screenshotone",
      "slug": "screenshotone",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "screenshotone_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "access_key",
                  "displayName": "Access Key",
                  "type": "string",
                  "default": null,
                  "description": "Your ScreenshotOne API access key.",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.screenshotone.com",
                  "description": "The base URL for ScreenshotOne API.",
                  "required": false
                },
                {
                  "name": "secret_key",
                  "displayName": "Secret Key",
                  "type": "string",
                  "default": null,
                  "description": "Your ScreenshotOne API secret key used for signing requests.",
                  "required": false
                }
              ]
            }
          },
          "proxy": {
            "base_url": "https://api.screenshotone.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-10T20:50:11.570Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "ScreenshotOne is a screenshot API for developers, enabling the rendering of website screenshots through simple API calls without managing browser clusters.",
        "logo": "https://screenshotone.com/logo.png",
        "app_url": "https://screenshotone.com/",
        "categories": [
          {
            "name": "API",
            "slug": "api"
          },
          {
            "name": "Web Development",
            "slug": "web-development"
          },
          {
            "name": "Screenshot Service",
            "slug": "screenshot-service"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "c26878ae-d387-469e-94db-ae8abbd76f2f"
      },
      "actions": [
        {
          "name": "take_animated_screenshot",
          "description": "This tool captures an animated screenshot (video or gif) of a given website url. it allows customization of the animation format, duration, viewport dimensions, and animation scenario (e.g., scrolling)."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/screenshotone/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"screenshotone\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SCREENSHOTONE])",
      "metadata": {
        "totalDownloads": "6",
        "activeUsers": "1",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "screenshotone"
    },
    "chatwork": {
      "name": "Chatwork",
      "slug": "chatwork",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "chatwork_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "offline_access",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.chatwork.com/v2",
                  "description": "The base URL for Chatwork API requests. For more information, visit https://developer.chatwork.com/docs/oauth",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Chatwork is a team communication platform featuring group chats, file sharing, and task management, aiming to enhance collaboration and productivity for businesses",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//chatwork-logo.jpg",
        "app_url": "https://go.chatwork.com",
        "categories": [
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          }
        ],
        "triggers_count": 0,
        "tools_count": 8
      },
      "deprecated": {
        "toolkitId": "00dda495-0025-4451-aef8-78adcf2cf5b4"
      },
      "actions": [
        {
          "name": "chatwork_delete_message",
          "description": "This tool allows you to delete a specific message from a chatwork room by calling the delete endpoint at https://api.chatwork.com/v2/rooms/{room id}/messages/{message id}. it requires authentication using a chatwork api token provided in the x-chatworktoken header, and the necessary permissions to delete messages in the specified room."
        },
        {
          "name": "get_chatwork_contacts",
          "description": "This tool retrieves a list of all contacts from chatwork. it is a fundamental tool that fetches all contact information such as account id, room id, name, chatwork id, organization details, department, and avatar image url, without needing additional parameters beyond authentication."
        },
        {
          "name": "get_file",
          "description": "This tool retrieves information about a specific file in a chat room. the api endpoint get /v2/rooms/{room id}/files/{file id} provides file details such as file id, account id, message id, filename, filesize, upload time, and download url, which are useful for retrieving file metadata, verifying file existence, and managing file sharing within chatwork."
        },
        {
          "name": "get_my_status",
          "description": "This tool retrieves the current status of the authenticated user, including unread message counts and task status. it provides a quick overview of unread messages, mentions, and tasks, making it valuable for monitoring chatwork activity and building automation workflows."
        },
        {
          "name": "upload_file",
          "description": "This tool allows users to upload files to a specific chatwork room. it enables file sharing functionality within the chatwork platform by providing an endpoint to upload files (along with an optional message) to a given room."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/chatwork/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"chatwork\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CHATWORK])",
      "metadata": {
        "totalDownloads": "17",
        "activeUsers": "3",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "chatwork"
    },
    "klipfolio": {
      "name": "Klipfolio",
      "slug": "klipfolio",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "klipfolio_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Klipfolio API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Klipfolio API Key",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://app.klipfolio.com/api/1.0/"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Klipfolio is a cloud-based business intelligence platform that enables users to create and share real-time dashboards and reports.",
        "logo": "https://www.klipfolio.com/sites/default/files/klipfolio-logo.png",
        "app_url": "https://www.klipfolio.com/",
        "categories": [
          {
            "name": "Business Intelligence",
            "slug": "business-intelligence"
          },
          {
            "name": "Data Visualization",
            "slug": "data-visualization"
          },
          {
            "name": "Dashboard Software",
            "slug": "dashboard-software"
          }
        ],
        "triggers_count": 0,
        "tools_count": 11
      },
      "deprecated": {
        "toolkitId": "034fe8e5-cfcf-4582-9506-b81a86f02171"
      },
      "actions": [
        {
          "name": "append_data_to_data_source",
          "description": "This tool appends plain-text or csv data to an existing data source in klipfolio. it requires two parameters: 'data' which contains the data in plain-text or csv format, and 'data source id' which specifies the target data source."
        },
        {
          "name": "create_data_source",
          "description": "This tool creates a new data source in klipfolio. it uses the post /datasources endpoint to add a data source with required parameters (name, format, connector, endpointurl) and optional parameters (description, refreshinterval, method, additionalproperties)."
        },
        {
          "name": "create_tab",
          "description": "This tool creates a new tab (dashboard) in klipfolio. a tab serves as a container for organizing and displaying klips (data visualizations) in a meaningful way. the tool allows users to set up a new dashboard with specific properties and configurations."
        },
        {
          "name": "delete_data_source",
          "description": "This tool permanently removes a specified data source from the klipfolio account. this operation is destructive and cannot be undone. the data source must not be currently in use, and proper permissions are required."
        },
        {
          "name": "get_dashboard",
          "description": "This tool retrieves detailed information about a specific dashboard (formerly known as tab) in klipfolio. it allows users to obtain comprehensive information including properties, settings, and metadata of the dashboard."
        },
        {
          "name": "get_data_source_instance",
          "description": "This tool retrieves detailed information about a specific data source instance in klipfolio. it can return data in either json or csv format depending on the data source type."
        },
        {
          "name": "get_klips",
          "description": "This tool retrieves a list of all klips accessible to the authenticated user. klips are visualization components in klipfolio that display data in various formats like charts, tables, or metrics."
        },
        {
          "name": "get_profile",
          "description": "This tool is used to retrieve the authenticated user's profile information and test the authentication status. it verifies api connectivity and access permissions by returning profile details such as user id, username, email, company information, role and permissions, and account status."
        },
        {
          "name": "list_data_sources",
          "description": "This tool retrieves a list of all data sources associated with an authenticated klipfolio account. it supports optional query parameters for pagination (limit and offset) and filtering by client id. the response includes details for each data source such as id, name, description, format, connector type, refresh interval, and timestamps."
        },
        {
          "name": "refresh_multiple_data_sources",
          "description": "This tool allows users to refresh multiple data sources in klipfolio simultaneously. it queues the specified data sources for refresh, updating their data from their respective sources. the tool automatically refreshes all available data sources associated with the authenticated account if no specific data source ids are provided."
        },
        {
          "name": "update_data_source",
          "description": "This tool allows you to replace/update the data in an existing klipfolio data source. it completely replaces the existing data with new data in the specified data source. the tool requires new data (in plain-text or csv format) to be provided and updates the data source accordingly."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/klipfolio/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"klipfolio\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.KLIPFOLIO])",
      "metadata": {
        "totalDownloads": "6",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "klipfolio"
    },
    "altoviz": {
      "name": "Altoviz",
      "slug": "altoviz",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "altoviz_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Altoviz API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key used for authenticating requests to the Altoviz API.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.altoviz.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-07T15:38:06.604Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Altoviz is a cloud-based billing and invoicing platform for businesses, offering online payments, expense tracking, document management, and customizable invoices.",
        "logo": "https://altoviz.com/favicon.ico",
        "app_url": "https://altoviz.com/en/",
        "categories": [
          {
            "name": "Finance",
            "slug": "finance"
          },
          {
            "name": "Accounting",
            "slug": "accounting"
          },
          {
            "name": "Invoicing",
            "slug": "invoicing"
          }
        ],
        "triggers_count": 0,
        "tools_count": 9
      },
      "deprecated": {
        "toolkitId": "29a8f598-c6c0-43eb-8332-8b6f76fd3a28"
      },
      "actions": [
        {
          "name": "create_product",
          "description": "Creates a new product in the altoviz system. this tool allows for the independent creation of a product with all necessary details."
        },
        {
          "name": "delete_product",
          "description": "This tool allows you to delete an existing product from altoviz. the action permanently removes the product from the system."
        },
        {
          "name": "find_contact",
          "description": "This tool allows searching for contacts in altoviz using an email address. the action is independently executable and returns contact details if found."
        },
        {
          "name": "find_customer",
          "description": "This tool allows you to find a customer in altoviz by their email address. this is a standalone action that doesn't require any resource ids or dependencies on other tools."
        },
        {
          "name": "find_product",
          "description": "This tool allows users to find products in altoviz using the product number. it retrieves detailed product information including id, name, number, description, price, and other relevant metadata. it is a critical operation for product management in altoviz."
        },
        {
          "name": "get_units",
          "description": "This tool retrieves a list of all available units in the altoviz system. units are used for product measurements and quantity specifications in various transactions."
        },
        {
          "name": "get_vats",
          "description": "This tool retrieves a list of all available vat rates from altoviz. it's essential for creating and managing invoices and quotes where vat calculations are required. it supports retrieving vat rates, validating them for different regions, and ensuring correct tax calculations in financial documents."
        },
        {
          "name": "update_customer",
          "description": "This tool updates an existing customer's information in altoviz. it enables modification of various customer details including contact information, company details, and personal information."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/altoviz/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"altoviz\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ALTOVIZ])",
      "metadata": {
        "totalDownloads": "6",
        "activeUsers": "10",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "altoviz"
    },
    "d2lbrightspace": {
      "name": "D2lbrightspace",
      "slug": "d2lbrightspace",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "d2l_brightspace_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                },
                {
                  "name": "domain",
                  "displayName": "D2L Brightspace Domain",
                  "type": "string",
                  "default": null,
                  "description": "Your D2L Brightspace domain (e.g., brightspace.university.edu)",
                  "required": true
                },
                {
                  "name": "version",
                  "displayName": "API Version",
                  "type": "string",
                  "default": "1.75",
                  "description": "D2L Brightspace API version (e.g., 1.75)",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "quizzing:quizzes:delete,quizzing:quizzes:read,quizzing:quizzes:create",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{domain}}/d2l/api/lp/{{version}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-01-28T09:48:40.433Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "D2L Brightspace provides APIs for building custom integrations and add-ons\n    for the D2L Brightspace platform.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/d2lbrightspace.png",
        "app_url": "https://www.d2l.com/brightspace/",
        "categories": [
          {
            "name": "Education & LMS",
            "slug": "education-&-lms"
          }
        ],
        "triggers_count": 0,
        "tools_count": 45
      },
      "deprecated": {
        "toolkitId": "04eeff5f-4f9d-434f-adf3-32d643b57cbe"
      },
      "actions": [
        {
          "name": "get_current_user",
          "description": "Retrieves the current user context's user information from d2l brightspace. requires one of these oauth2 scopes: - users:profile:read - users:own profile:read available in api versions 1.46+ (lms v20.24.3+)"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/d2lbrightspace/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"d2lbrightspace\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.D2LBRIGHTSPACE])",
      "metadata": {
        "totalDownloads": "29",
        "activeUsers": "2",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "d2lbrightspace"
    },
    "blackboard": {
      "name": "Blackboard",
      "slug": "blackboard",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "blackboard_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "your_server",
                  "displayName": "Your Server",
                  "type": "string",
                  "default": null,
                  "description": "Your server name used for API",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{your_server}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-10-22T07:04:06.573Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Anthology Adopt powered by Pendo allows institutions to gain insights on Blackboard Learn usage and take action through in-app messages, digital walkthrough guides, and tooltips.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Blackboard.jpg",
        "app_url": "https://www.blackboard.com",
        "categories": [
          {
            "name": "ed",
            "slug": "ed"
          }
        ],
        "triggers_count": 0,
        "tools_count": 314
      },
      "deprecated": {
        "toolkitId": "c4d8f97e-d4e6-4522-bd81-2ba38701ac15"
      },
      "actions": [
        {
          "name": "get_messages",
          "description": "Retrieves all messages associated with a specific course in the blackboard learning management system. this endpoint is used to access course-related communication, announcements, and notifications. it provides a comprehensive view of all messages within the context of a particular course, which can include instructor announcements, student discussions, and system notifications. this tool should be used when there's a need to gather all communication related to a specific course, such as for auditing purposes or to provide a complete message history to students or instructors. it does not allow for filtering or searching messages; all messages for the specified course are returned."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/blackboard/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"blackboard\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BLACKBOARD])",
      "metadata": {
        "totalDownloads": "6",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "blackboard"
    },
    "pandadoc": {
      "name": "Pandadoc",
      "slug": "pandadoc",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "pandadoc_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your PandaDoc API key for authentication.",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.pandadoc.com/public/v1",
                  "description": "The API base URL for PandaDoc.",
                  "required": false
                }
              ]
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "PandaDoc offers document creation, e-signatures, and workflow automation, helping sales teams and businesses streamline proposals, contracts, and agreement processes",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/pandadoc.svg",
        "app_url": "https://www.pandadoc.com/",
        "categories": [
          {
            "name": "Document & File Management",
            "slug": "document-&-file-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 14
      },
      "deprecated": {
        "toolkitId": "299e2af7-3edd-4468-9007-71d0d318562b"
      },
      "actions": [
        {
          "name": "create_contact",
          "description": "This tool creates a new contact in pandadoc. it allows you to add a new contact with their personal and professional information to your pandadoc account. the tool is completely independent and doesn't require any external resource ids or dependencies."
        },
        {
          "name": "create_document_attachment",
          "description": "Creates and adds an attachment to a pandadoc document. this tool allows you to attach downloadable files such as supplemental materials, excel spreadsheets, or other content without embedding them directly into the document. attachments can be added only to documents in 'document.draft' status, with a maximum of 10 files per document and a size limit of 50mb per file."
        },
        {
          "name": "create_document_from_file",
          "description": "Creates a new document in pandadoc by uploading a file (pdf, docx, etc.). this tool converts existing documents into pandadoc documents for processing, signing, and tracking through the pandadoc system."
        },
        {
          "name": "create_folder",
          "description": "Creates a new folder in pandadoc to organize documents. this action allows users to create a new folder with a specified name and optionally set a parent folder to create a nested folder structure."
        },
        {
          "name": "create_template",
          "description": "This tool allows users to create a new template in pandadoc from a pdf file or from scratch. it handles file upload validation, parameter checks, proper error handling, and authentication with the pandadoc api. the template can be created either by uploading a pdf file or by providing a structured content object that defines the template layout and elements."
        },
        {
          "name": "create_webhook",
          "description": "Creates a new webhook subscription in pandadoc to receive notifications about specific events. this action allows you to set up webhook notifications for various document-related events such as status changes, recipient completions, and updates. the webhook will send http notifications to your specified endpoint when the configured events occur."
        },
        {
          "name": "delete_contact",
          "description": "This tool allows you to delete a contact from your pandadoc account. the action is permanent and cannot be undone."
        },
        {
          "name": "delete_template",
          "description": "This tool deletes a specific template from pandadoc. once a template is deleted, it cannot be recovered. this action is permanent and should be used with caution."
        },
        {
          "name": "list_contacts",
          "description": "A tool to list and search contacts in pandadoc. it retrieves a list of contacts with various options including filtering by email, search query, pagination, and shared status. all parameters are optional and it supports flexible queries to get contacts."
        },
        {
          "name": "list_document_folders",
          "description": "This tool retrieves a list of all document folders in pandadoc. it's a standalone action that doesn't require any external dependencies or resource ids. the tool will return a list of folders containing documents, with each folder containing information about its id, name, and parent folder relationship."
        },
        {
          "name": "list_templates",
          "description": "This tool retrieves a list of all templates available in the pandadoc account. it supports parameters to filter templates by name, shared status, deleted status, pagination, and tag filtering, and returns detailed template information."
        },
        {
          "name": "move_document_to_folder",
          "description": "This tool allows users to move a document to a specific folder within their pandadoc account. it performs a post request to move the document to the specified folder. both the document and the destination folder must exist."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/pandadoc/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"pandadoc\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.PANDADOC])",
      "metadata": {
        "totalDownloads": "28",
        "activeUsers": "10",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "pandadoc"
    },
    "workiom": {
      "name": "Workiom",
      "slug": "workiom",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "workiom_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Workiom API key",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.workiom.com/"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-10T20:50:11.570Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Workiom provides APIs for automating workflows, integrating with\n    various tools, and building custom applications.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//workiom.jpeg",
        "app_url": "https://workiom.com",
        "categories": [
          {
            "name": "Workflow Automation",
            "slug": "workflow-automation"
          }
        ],
        "triggers_count": 0,
        "tools_count": 3
      },
      "deprecated": {
        "toolkitId": "5caed332-9bdb-4e68-b676-b156c4bd9f60"
      },
      "actions": [
        {
          "name": "create_record",
          "description": "Creates a new record in a specified workiom list. this tool creates a record with basic field types like text, numbers, dates, and static list items. the record data should be provided as a json object where each key is a field id and the value matches the expected data type for that field."
        },
        {
          "name": "get_all_lists",
          "description": "Get all lists from a workiom workspace. this action fetches all available lists in a workiom workspace. it's a fundamental tool that serves as a prerequisite for most other operations (like creating records, which require a list id). the action supports pagination and can optionally include field definitions for each list."
        },
        {
          "name": "get_records",
          "description": "Retrieves records from a specified list in workiom. this tool fetches records from a specified list with optional filtering, sorting, and pagination capabilities. the response includes the records along with summary information and total count."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/workiom/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"workiom\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.WORKIOM])",
      "metadata": {
        "totalDownloads": "38",
        "activeUsers": "9",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "workiom"
    },
    "gorgias": {
      "name": "Gorgias",
      "slug": "gorgias",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "gorgias_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "openid email profile offline write:all",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "subdomain",
                  "displayName": "Sub Domain",
                  "type": "string",
                  "default": null,
                  "description": "The base URL for Gorgias API access, including the subdomain specific to your Gorgias account.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{subdomain}}.gorgias.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Integration for Gorgias, focusing on e-commerce enhancements.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//gorgias.png",
        "app_url": "https://www.gorgias.com",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Sales & Customer Support",
            "slug": "sales-&-customer-support"
          }
        ],
        "triggers_count": 0,
        "tools_count": 32
      },
      "deprecated": {
        "toolkitId": "2fafa60d-c936-42b7-b92c-8f47979309ac"
      },
      "actions": [
        {
          "name": "list_teams",
          "description": "Lists teams in gorgias."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/gorgias/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"gorgias\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GORGIAS])",
      "metadata": {
        "totalDownloads": "14",
        "activeUsers": "6",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "gorgias"
    },
    "todoist": {
      "name": "Todoist",
      "slug": "todoist",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "todoist_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "data:read_write",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.todoist.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Todoist is a task management tool allowing users to create to-do lists, set deadlines, and collaborate on projects with reminders and cross-platform syncing",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/todoist.svg",
        "app_url": "https://www.todoist.com/",
        "categories": [
          {
            "name": "Productivity & Project Management",
            "slug": "productivity-&-project-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 7
      },
      "deprecated": {
        "toolkitId": "63d79fc5-5580-4486-81bd-e76799210a8d"
      },
      "actions": [
        {
          "name": "close_task",
          "description": "This tool marks an existing task as completed in todoist. it requires the `task id` of the task to be closed."
        },
        {
          "name": "create_task",
          "description": "Create a new task in todoist. this action allows users to create tasks with various parameters including content, due dates, priority, and more. the task can be created in a specific project, section, or as a subtask of another task."
        },
        {
          "name": "delete_task",
          "description": "Delete a task from todoist. this action permanently removes the task and all its subtasks."
        },
        {
          "name": "get_all_comments",
          "description": "This tool retrieves all comments associated with a specific task or project in todoist. it requires either a task id or a project id to fetch the comments, and it returns a json array of comment objects with details such as id, posted at, content, and attachment information."
        },
        {
          "name": "get_all_labels",
          "description": "Get all personal labels from todoist. this action retrieves all personal labels from a user's todoist account. each label contains information like name, color, order and favorite status. api documentation: https://developer.todoist.com/rest/v2/#get-all-personal-labels"
        },
        {
          "name": "get_all_projects",
          "description": "Get all projects from a user's todoist account. this tool retrieves all projects from the authenticated user's todoist account. the response includes details like project id, name, color, parent project, sharing status, and other metadata for each project."
        },
        {
          "name": "reopen_task",
          "description": "This tool reopens a previously completed task."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/todoist/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"todoist\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.TODOIST])",
      "metadata": {
        "totalDownloads": "81",
        "activeUsers": "25",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "todoist"
    },
    "ngrok": {
      "name": "Ngrok",
      "slug": "ngrok",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "ngrok_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "apiKey",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your ngrok API Key used for authentication to manage your ngrok account.",
                  "required": true
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.ngrok.com",
                  "description": "Your ngrok base URL",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Ngrok creates secure tunnels to locally hosted applications, enabling developers to share and test webhooks or services without configuring complex network settings",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//ngrok-logo.jpeg",
        "app_url": "https://ngrok.com/",
        "categories": [
          {
            "name": "Developer Tools & DevOps",
            "slug": "developer-tools-&-devops"
          }
        ],
        "triggers_count": 0,
        "tools_count": 9
      },
      "deprecated": {
        "toolkitId": "34597c4a-e4a0-460c-894d-51d1bc001527"
      },
      "actions": [
        {
          "name": "create_api_key",
          "description": "Creates a new api key for authenticating with the ngrok api. this tool allows programmatic creation of api keys that can be used to access ngrok's api services."
        },
        {
          "name": "delete_api_key",
          "description": "Delete an api key by its id. this action permanently removes the specified api key from your ngrok account. this is an important security feature that allows users to revoke access when an api key is compromised or no longer needed. once deleted, the api key cannot be recovered and any services using it will lose access."
        },
        {
          "name": "get_ip_restrictions",
          "description": "This tool retrieves detailed information about a specific ip restriction by its id. it is used to control which ip addresses can access ngrok resources, including the api, by fetching complete details of the ip restriction. this action is essential for auditing and verification in ip restriction management."
        },
        {
          "name": "list_api_keys",
          "description": "This tool lists all api keys owned by the user. the api keys are used to authenticate api requests to ngrok's rest api. the endpoint returns a paginated list of api keys."
        },
        {
          "name": "list_endpoints",
          "description": "List all active endpoints on the ngrok account. this tool will list all active endpoints on the ngrok account, providing visibility into running tunnels and endpoints. it requires no input parameters beyond authentication and serves as a fundamental component for monitoring, managing, and referencing ngrok resources."
        },
        {
          "name": "list_https_edges",
          "description": "Lists all https edges in your ngrok account. https edges are configurations that tell ngrok how to handle https traffic. the action returns a paginated list of all https edges associated with your account."
        },
        {
          "name": "list_ip_restrictions",
          "description": "This tool retrieves a list of all ip restrictions configured on the ngrok account. it allows users to audit and review all ip-based access restrictions on their ngrok account for enhanced security management. the api endpoint supports pagination with optional parameters such as 'limit' and 'before id', and returns a detailed json response containing attributes like id, uri, created at, description, metadata, enforced, type, and associated ip policies."
        },
        {
          "name": "list_tunnels",
          "description": "List all active tunnels in the ngrok account. this tool lists all active tunnels in the ngrok account, providing details such as tunnel id, public url, start time, protocol, configuration details, and metadata. it requires no input parameters beyond authentication and returns a paginated list of all running tunnels with their complete status information."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/ngrok/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"ngrok\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.NGROK])",
      "metadata": {
        "totalDownloads": "120",
        "activeUsers": "21",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "ngrok"
    },
    "baserow": {
      "name": "Baserow",
      "slug": "baserow",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "API Key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Host",
                  "type": "string",
                  "default": "https://api.baserow.io",
                  "description": "The API base URL for Baserow.",
                  "required": false
                },
                {
                  "name": "username",
                  "displayName": "Username",
                  "type": "string",
                  "default": null,
                  "description": "Your Baserow username.",
                  "required": false
                },
                {
                  "name": "password",
                  "displayName": "Password",
                  "type": "string",
                  "default": null,
                  "description": "Your Baserow password.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Baserow is an open-source database tool that lets teams build no-code data applications, collaborate on records, and integrate with other services for data management",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//baserow-logo.jpeg",
        "app_url": "https://baserow.io/",
        "categories": [
          {
            "name": "Developer Tools & DevOps",
            "slug": "developer-tools-&-devops"
          }
        ],
        "triggers_count": 0,
        "tools_count": 2
      },
      "deprecated": {
        "toolkitId": "1bee043a-8484-4b44-8a6c-05ad016d52d3"
      },
      "actions": [
        {
          "name": "list_databases",
          "description": "This tool retrieves a list of all databases in a specified workspace. as a fundamental operation, it allows users to discover which databases are available in their baserow workspace. this operation is independent and requires only authentication in order to fetch essential metadata for subsequent operations."
        },
        {
          "name": "list_tables",
          "description": "This tool lists all tables within a specified baserow database. it allows users to retrieve information about all tables in a database by using the get /api/database/{database id}/tables/ endpoint. the expected output is an array of table objects containing details such as id, name, order, database id, type, and first row header."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/baserow/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"baserow\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BASEROW])",
      "metadata": {
        "totalDownloads": "50",
        "activeUsers": "9",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "baserow"
    },
    "dialpad": {
      "name": "Dialpad",
      "slug": "dialpad",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "dialpad_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "recordings_export,message_content_export,screen_pop,calls:list,fax_message,change_log,offline_access",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://dialpad.com/api/v2"
          }
        },
        {
          "name": "dialpad_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Dialpad API key for authentication. Obtain it from your Dialpad admin settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://dialpad.com/api/v2"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-02-27T11:24:27.312Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Dialpad is a cloud-based business phone system and contact center platform that enables voice, video, messages and meetings across your existing devices",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/dialpad.png",
        "app_url": "https://www.dialpad.com/",
        "categories": [
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          }
        ],
        "triggers_count": 0,
        "tools_count": 192
      },
      "deprecated": {
        "toolkitId": "86284dd0-7e2d-4c7e-9e0e-406dc4b95daf"
      },
      "actions": [
        {
          "name": "add_operator_to_call_center",
          "description": "This endpoint adds a new operator to a specified call center in the dialpad system. it allows for the configuration of the operator's role, skill level, and license type, as well as managing phone number retention when switching to a support license. use this endpoint when you need to expand your call center team or adjust an existing user's role within the call center. the endpoint is particularly useful for setting up new operators with specific skill levels and roles, which can help in optimizing call routing and management within the call center. note that while adding an operator, careful consideration should be given to the license type and role assigned, as these affect the operator's capabilities and the associated costs."
        },
        {
          "name": "assign_phone_number_to_user",
          "description": "This endpoint assigns a phone number to a specific dialpad user. it allows for either searching for an available number within a given area code or assigning a specific number to the user. the assigned number can optionally be set as the user's primary number. use this endpoint when you need to provide a user with a new phone number or add an additional number to their account. it's particularly useful for setting up new users or expanding the communication capabilities of existing users. note that this endpoint doesn't handle number porting or transferring existing numbers between users."
        },
        {
          "name": "create_custom_ivr_with_audio_file",
          "description": "Creates a new custom interactive voice response (ivr) system within the dialpad platform. this endpoint allows you to define and configure an ivr workflow by specifying its type, associated audio file, and target assignment. use this when setting up automated phone menus, call routing systems, or customized voice interactions for different parts of your dialpad organization. the ivr can be assigned to various entities like call centers, departments, or individual users, providing flexibility in managing call flows and customer interactions."
        },
        {
          "name": "create_user_with_auto_assign",
          "description": "Creates a new user account in the dialpad system with the specified details. this endpoint allows you to add a new user to your dialpad organization, set up their basic profile information, assign them to an office, and optionally auto-assign a phone number. it's particularly useful for bulk user creation or when integrating dialpad user management with other systems. the endpoint requires at minimum an email and office id, with options to further customize the user's profile and permissions through additional parameters. note that while a license can be specified, it defaults to 'talk' if not provided, ensuring that the new user has basic dialpad functionality."
        },
        {
          "name": "initiate_outbound_call_via_api",
          "description": "The initiateoutboundcall endpoint allows you to programmatically initiate an outbound call using the dialpad api. this tool is used to place calls on behalf of a dialpad user to a specified phone number. it supports various customization options, including setting custom caller id, associating the call with a group, and enabling consult mode for handling multiple calls. use this endpoint when you need to automate outbound calling in your application, such as for customer outreach, automated notifications, or integrating calling capabilities into your workflow. the endpoint is particularly useful for scenarios requiring programmatic call initiation, but it does not handle the actual call audio or provide real-time call control. be aware that the call's success depends on the user's dialpad account status and permissions."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/dialpad/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"dialpad\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.DIALPAD])",
      "metadata": {
        "totalDownloads": "37",
        "activeUsers": "4",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "dialpad"
    },
    "formsite": {
      "name": "Formsite",
      "slug": "formsite",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "formsite_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "access_token",
                  "displayName": "Access Token",
                  "type": "string",
                  "default": null,
                  "description": "Your Formsite account's access token",
                  "required": true
                },
                {
                  "name": "form_api_base_url",
                  "displayName": "Form API Base URL",
                  "type": "string",
                  "default": null,
                  "description": "The API base URL for your Formsite form",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{form_api_base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-06T14:19:58.203Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Formsite helps users create online forms and surveys with drag-and-drop tools, secure data capture, and integrations to simplify workflows",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//formsite.png",
        "app_url": "https://www.formsite.com/",
        "categories": [
          {
            "name": "Workflow Automation",
            "slug": "workflow-automation"
          },
          {
            "name": "Document & File Management",
            "slug": "document-&-file-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 5
      },
      "deprecated": {
        "toolkitId": "63868b40-279a-4345-9c22-263377a04e70"
      },
      "actions": [
        {
          "name": "get_form_items",
          "description": "This tool retrieves all items (questions) for a specific form using the get https://{server}.formsite.com/api/v2/{user dir}/forms/{form dir}/items endpoint. it is an independent action that only requires the form directory (obtainable via formsite list all forms) to retrieve the structure and details such as item ids, question types, text, answer choices, required status, and other properties."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/formsite/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"formsite\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.FORMSITE])",
      "metadata": {
        "totalDownloads": "35",
        "activeUsers": "14",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "formsite"
    },
    "kommo": {
      "name": "Kommo",
      "slug": "kommo",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "kommo_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "subdomain",
                  "displayName": "Subdomain",
                  "type": "string",
                  "default": null,
                  "description": "The subdomain for the Kommo CRM account.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{subdomain}}.kommo.com/api/v4"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-02-27T11:24:27.312Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Kommo CRM (formerly amoCRM) integration tool for managing customer relationships,\n    sales pipelines, and business processes. This tool enables automation of various\n    CRM operations including:",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/kommo.png",
        "app_url": "https://www.kommo.com",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          }
        ],
        "triggers_count": 0,
        "tools_count": 15
      },
      "deprecated": {
        "toolkitId": "14799cbf-85ac-46e2-a6f1-02ebeafdaa6f"
      },
      "actions": [
        {
          "name": "create_company",
          "description": "Action to add one or more companies into the kommo account."
        },
        {
          "name": "create_contact",
          "description": "Action to create one or more contacts in kommo crm."
        },
        {
          "name": "create_lead",
          "description": "Action to create one or more leads in kommo crm."
        },
        {
          "name": "create_task",
          "description": "Action to create a task in kommo crm."
        },
        {
          "name": "list_companies",
          "description": "Action to list kommo companies with various filter options."
        },
        {
          "name": "list_contacts",
          "description": "Action to list contacts in kommo crm."
        },
        {
          "name": "list_leads",
          "description": "Action to list leads in kommo crm."
        },
        {
          "name": "list_leads_pipelines",
          "description": "Action to list lead pipelines in kommo crm."
        },
        {
          "name": "list_pipeline_stages",
          "description": "Action to list stages of a pipeline in kommo crm."
        },
        {
          "name": "update_company",
          "description": "Action to update a single company in kommo crm."
        },
        {
          "name": "update_contact",
          "description": "Action to update contacts in kommo crm."
        },
        {
          "name": "update_lead",
          "description": "Action to update a lead in kommo crm."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/kommo/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"kommo\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.KOMMO])",
      "metadata": {
        "totalDownloads": "87",
        "activeUsers": "43",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "kommo"
    },
    "browseai": {
      "name": "Browseai",
      "slug": "browseai",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "browse_ai_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.browse.ai/v2/",
                  "description": "The base URL for the Browse.ai API.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "API key used for authenticating requests to Browse.ai.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.browse.ai/v2"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Browse.ai allows you to turn any website into an API using its advanced web automation and data extraction tools, enabling easy monitoring and data retrieval from websites.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/browseai.svg",
        "app_url": "https://www.browseai.com",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          },
          {
            "name": "Workflow Automation",
            "slug": "workflow-automation"
          }
        ],
        "triggers_count": 0,
        "tools_count": 9
      },
      "deprecated": {
        "toolkitId": "b27776d8-7a4c-4f07-884a-47bd07e82282"
      },
      "actions": [
        {
          "name": "bulk_run_tasks",
          "description": "This action allows users to bulk run up to 50,000 tasks using a specified robot. it provides a post endpoint at /v2/robots/{robotid}/bulk-tasks and supports parameters such as robot id (required), title (required), and input parameters (required). this bulk operation is essential for large-scale data extraction."
        },
        {
          "name": "create_monitor",
          "description": "This tool creates a new monitor for a specific robot in browse ai. it allows you to configure a monitor with a schedule (frequency and interval) for automatic execution, along with optional custom name and input parameters, enabling automated tracking of website changes."
        },
        {
          "name": "create_webhook",
          "description": "This tool creates a new webhook for a browseai robot. webhooks are used to receive notifications when tasks are completed or data changes are detected. the webhook will be called with the task details when specific events occur. it is useful for: - setting up automated notifications for task completion - receiving real-time updates when changes are detected - integrating browseai with your own systems - automating workflows based on robot task results the webhook can be configured to trigger on different events: - task.completed: when a task is successfully completed - task.failed: when a task fails - changes.detected: when changes are detected during monitoring"
        },
        {
          "name": "delete_monitor",
          "description": "This tool allows users to delete a specific monitor from their browse ai account. it uses the delete method and requires a valid monitor id."
        },
        {
          "name": "delete_task",
          "description": "This tool allows you to delete a specific task in browseai by its task id. it is used for cleaning up completed or failed tasks, managing resources, and maintaining your task list."
        },
        {
          "name": "get_robots",
          "description": "This tool retrieves a list of all robots under your account in browse ai. each robot represents an automated task that can be trained to perform various web operations like opening webpages, logging in, clicking buttons, filling forms, extracting data, and monitoring changes. it is useful for: - getting an overview of all your automated tasks - checking the status of your robots - retrieving robot ids for use with other api endpoints - monitoring when robots were last updated or created"
        },
        {
          "name": "get_robot_tasks",
          "description": "This tool retrieves all tasks associated with a specific robot in browse ai. it provides a paginated list of tasks with their details including status, input parameters, captured data, screenshots, and lists. it is useful for: - monitoring task execution status - retrieving captured data and screenshots - analyzing task execution history - debugging robot performance"
        },
        {
          "name": "get_task_details",
          "description": "This tool retrieves detailed information about a specific task in browse ai by its task id. it returns comprehensive details including the task's status, execution results, associated metadata, timestamps, and configuration. it complements existing tools by providing an in-depth view of individual task execution, including metadata and error details if applicable."
        },
        {
          "name": "run_robot",
          "description": "This tool allows you to trigger the execution of a browseai robot on demand. the tool will run a specified robot with the provided parameters and return the task details. it requires a robot id and optional input parameters (such as url, search term, or other parameters) to configure the robot's execution. it is useful for: - starting robot executions programmatically - automating data collection tasks - triggering robots with custom parameters - integrating robot execution in workflows"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/browseai/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"browseai\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BROWSEAI])",
      "metadata": {
        "totalDownloads": "132",
        "activeUsers": "26",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "browseai"
    },
    "maintainx": {
      "name": "Maintainx",
      "slug": "maintainx",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "maintainx_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "MaintainX API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key generated from the MaintainX platform.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.getmaintainx.com/v1/"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "MaintainX is a cloud-based computerized maintenance management system (CMMS) that helps organizations centralize maintenance data, communication, and workflows.",
        "logo": "https://www.getmaintainx.com/favicon.ico",
        "app_url": "https://www.getmaintainx.com/",
        "categories": [
          {
            "name": "Maintenance Management",
            "slug": "maintenance-management"
          },
          {
            "name": "Asset Management",
            "slug": "asset-management"
          },
          {
            "name": "Workflow Automation",
            "slug": "workflow-automation"
          }
        ],
        "triggers_count": 0,
        "tools_count": 11
      },
      "deprecated": {
        "toolkitId": "52fcee25-82ee-4340-baf1-a250bae3ccda"
      },
      "actions": [
        {
          "name": "create_work_order",
          "description": "This tool creates a new work order in maintainx. it uses the post /api/v1/workorders endpoint. the tool requires a 'title' for the work order and offers several optional parameters including description, priority, duedate, startdate, userids, teamids, proceduretemplateid, locationid, assetid, and categories."
        },
        {
          "name": "create_work_order_comment",
          "description": "This tool creates a new comment on an existing work order in maintainx. it allows users to add comments for documentation, updates, or communication purposes within a specific work order. it requires a workorderid and the text content of the comment to create a new comment on the work order, providing capabilities to update maintenance work order records."
        },
        {
          "name": "create_work_request_portal",
          "description": "Creates a new work request portal in maintainx. a work request portal allows users to submit work requests through a dedicated url. the portal can be customized with a title, welcome text, and description placeholder. it can be associated with a specific location and asset, and can be configured to require email contact information."
        },
        {
          "name": "find_entity",
          "description": "A tool to search and find specific entities within maintainx by specified fields. this tool allows users to search for different types of entities including work orders, users, and locations."
        },
        {
          "name": "list_assets",
          "description": "This tool allows users to retrieve a list of all assets in their organization."
        },
        {
          "name": "list_categories",
          "description": "This tool retrieves a list of all categories in your maintainx organization. categories are used to organize and classify work orders, assets, and other items in the system. it supports listing the categories with pagination and provides details such as category id, name, description, and timestamps for creation and update."
        },
        {
          "name": "list_locations",
          "description": "This tool retrieves a list of all available locations in the organization's maintainx account. the locations can be physical places where assets are located, work is performed, or maintenance is needed."
        },
        {
          "name": "list_teams",
          "description": "This tool retrieves a list of all teams in your maintainx organization."
        },
        {
          "name": "list_work_orders",
          "description": "Action to list work orders from maintainx."
        },
        {
          "name": "update_work_order",
          "description": "This tool allows users to update an existing work order in maintainx by modifying specific attributes without affecting other unchanged fields. it requires the workorder id and at least one of the optional parameters (title, description, or priority) to perform the update."
        },
        {
          "name": "update_work_order_status",
          "description": "This tool allows users to update the status of a specific work order in maintainx. it is focused specifically on status updates, making it more streamlined than the comprehensive 'update work order' action which allows updating multiple fields."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/maintainx/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"maintainx\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.MAINTAINX])",
      "metadata": {
        "totalDownloads": "6",
        "activeUsers": "12",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "maintainx"
    },
    "tinyurl": {
      "name": "Tinyurl",
      "slug": "tinyurl",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "tinyurl_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_token",
                  "displayName": "API Token",
                  "type": "string",
                  "default": null,
                  "description": "Your TinyURL API token, obtained from the TinyURL dashboard settings",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.tinyurl.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "TinyURL provides APIs for shortening long URLs into compact, branded\n    links and tracking link analytics.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//tinyurl-logo.png",
        "app_url": "https://www.tinyurl.com",
        "categories": [
          {
            "name": "Other / Miscellaneous",
            "slug": "other-/-miscellaneous"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "931095e0-948e-4534-8277-1a5978bd3de3"
      },
      "actions": [
        {
          "name": "create_short_url",
          "description": "Creates a shortened url using tinyurl's api. this action takes a long url and returns a shortened version, with optional parameters for customization like domain, alias, tags, and expiration date."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/tinyurl/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"tinyurl\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.TINYURL])",
      "metadata": {
        "totalDownloads": "20",
        "activeUsers": "8",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "tinyurl"
    },
    "timecamp": {
      "name": "Timecamp",
      "slug": "timecamp",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "timecamp_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.timecamp.com"
          }
        },
        {
          "name": "timecamp_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key_base64",
                  "displayName": "TimeCamp API Key (base64 encoded)",
                  "type": "string",
                  "default": null,
                  "description": "Base64-encoded string of your TimeCamp API key followed by a colon (for HTTP Basic Authentication). For example, base64('YOUR_API_KEY:').",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://app.timecamp.com/api"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T15:20:52.634Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "TimeCamp is a time tracking solution designed to help businesses of all sizes track time for projects to maximize their profits.",
        "logo": "https://www.timecamp.com/images/logo.svg",
        "app_url": "https://www.timecamp.com/",
        "categories": [
          {
            "name": "Time Tracking",
            "slug": "time-tracking"
          },
          {
            "name": "Productivity",
            "slug": "productivity"
          },
          {
            "name": "Project Management",
            "slug": "project-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "ad527400-9cc6-4694-9b1f-5edf290a26f2"
      },
      "actions": [
        {
          "name": "get_projects_list",
          "description": "This tool retrieves a list of all projects from timecamp. in timecamp's api, projects are represented as tasks with no parent id (root-level tasks). it requires the api token parameter for authentication and supports an optional 'format' parameter to specify the output format (defaulting to json). the response includes detailed project information including task id, name, hierarchical data, and additional attributes."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/timecamp/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"timecamp\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.TIMECAMP])",
      "metadata": {
        "totalDownloads": "6",
        "activeUsers": "14",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "timecamp"
    },
    "alchemy": {
      "name": "Alchemy",
      "slug": "alchemy",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "alchemy_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Alchemy API Key used for authentication to manage your Alchemy account.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://dashboard.alchemyapi.io/api"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Alchemy is a blockchain development platform that provides powerful APIs and developer tools for building and scaling Ethereum applications",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//tapformio.png",
        "app_url": "https://www.alchemy.com/",
        "categories": [
          {
            "name": "Blockchain",
            "slug": "blockchain"
          },
          {
            "name": "Web3",
            "slug": "web3"
          },
          {
            "name": "Ethereum",
            "slug": "ethereum"
          }
        ],
        "triggers_count": 0,
        "tools_count": 7
      },
      "deprecated": {
        "toolkitId": "c53a805b-69ba-4952-a9b3-87b9ab5d31a4"
      },
      "actions": [
        {
          "name": "get_contract_metadata",
          "description": "This tool retrieves metadata for a given nft smart contract. essential for obtaining basic nft collection details such as contract name, symbol, total supply, token type (erc721 vs erc1155), contract deployer address, deployed block number, opensea metadata, and contract verification status."
        },
        {
          "name": "get_nft_sales",
          "description": "This tool will retrieve nft sales data across various marketplaces. it allows users to query historical nft sales data with filtering options such as fromblock, toblock, order, marketplace, and limit in order to track nft sales activity, analyze historical data, monitor specific collections, and get real-time updates on nft transactions."
        },
        {
          "name": "get_token_balances",
          "description": "This tool retrieves erc20 token balances for a specified ethereum address. it can either return balances for all tokens an address has ever interacted with or for a specific set of token contract addresses. it is useful for checking token balances for wallets, monitoring erc20 token holdings, portfolio tracking, and defi applications."
        },
        {
          "name": "get_token_metadata",
          "description": "This tool retrieves metadata for a given token contract address, including the token's name, symbol, decimals, and logo url if available. it is essential for applications that need to display token information, handle token transfers, or manage token listings."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/alchemy/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"alchemy\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ALCHEMY])",
      "metadata": {
        "totalDownloads": "4",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "alchemy"
    },
    "foursquare": {
      "name": "Foursquare",
      "slug": "foursquare",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "PlacesApiKeyAuth",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Foursquare API key for authentication. Obtain it from your developer portal.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.foursquare.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-02-17T14:03:05.493Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Search for places and place recommendations from the Foursquare Places database",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/foursquare.png",
        "app_url": "https://www.foursquare.com",
        "categories": [
          {
            "name": "Other / Miscellaneous",
            "slug": "other-/-miscellaneous"
          }
        ],
        "triggers_count": 0,
        "tools_count": 5
      },
      "deprecated": {
        "toolkitId": "4ecb7dd7-f37f-4983-95a4-cbd23070b502"
      },
      "actions": [
        {
          "name": "retrieve_nearby_places_v3",
          "description": "The getnearbyplaces endpoint retrieves a list of places near a specified location, primarily supporting check-in use cases and local discovery. it returns points of interest (pois) including lower quality results not found in the standard place search, enhancing location-based experiences with additional data like photos, reviews, and tips. this endpoint is ideal for applications seeking to provide users with a comprehensive view of their surroundings, including less prominent or newer locations. while it offers a broader range of results, it may sacrifice some precision compared to more focused search endpoints. use this when you want to offer users a diverse array of nearby options, particularly for social check-in features or exploratory local recommendations."
        },
        {
          "name": "retrieve_places_by_id",
          "description": "Retrieves detailed information about a specific place using its unique foursquare id (fsq id). this endpoint provides comprehensive data about a venue, including its name, address, category, ratings, tips, photos, and other relevant information. it's particularly useful when you need in-depth details about a known location, such as for displaying venue profiles or gathering specific place attributes. the endpoint should be used when you have a valid fsq id and require the most up-to-date and complete information about that place. note that this endpoint focuses on individual place details and does not provide search functionality or lists of multiple venues."
        },
        {
          "name": "retrieve_place_photos_by_id",
          "description": "Retrieves photos associated with a specific place in foursquare's database. this endpoint allows you to access user-generated images for a particular point of interest (poi) using its unique foursquare id (fsq id). it's useful for enhancing your application with visual content related to locations, such as restaurants, landmarks, or businesses. the endpoint returns photo data that can be used to construct image urls for display. keep in mind that the number and quality of photos may vary depending on the popularity and user engagement of the place. this tool should be used when you need to display or analyze visual information about a specific location in your application."
        },
        {
          "name": "retrieve_place_tips_using_fsq_id",
          "description": "Retrieves user-generated tips for a specific place in the foursquare database. this endpoint allows you to fetch valuable insights and experiences shared by foursquare users about a particular venue. it's useful for enhancing location-based applications with real user feedback, helping users make informed decisions about places they might visit. the endpoint returns a list of tips, which may include information such as the tip text, the user who created it, and potentially a timestamp or rating."
        },
        {
          "name": "search_places_api_request",
          "description": "The getplacessearch endpoint allows you to search for places in the foursquare database based on various criteria such as location, keywords, and categories. this tool is ideal for discovering nearby points of interest or finding specific venues. it returns a list of places matching the specified parameters, providing essential information about each location. use this endpoint for location-based features or gathering venue information in a specific area."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/foursquare/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"foursquare\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.FOURSQUARE])",
      "metadata": {
        "totalDownloads": "20",
        "activeUsers": "5",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "foursquare"
    },
    "open_sea": {
      "name": "Open sea",
      "slug": "open_sea",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "opensea_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your OpenSea API key. You can obtain this from your OpenSea developer settings.",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.opensea.io/api/v2",
                  "description": "The base URL for the OpenSea API",
                  "required": false
                }
              ]
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-01-17T08:41:43.231Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "OpenSea is the world's first and largest NFT marketplace for NFTs and crypto collectibles.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/opensea.png",
        "app_url": "https://opensea.io",
        "categories": [
          {
            "name": "NFT",
            "slug": "nft"
          },
          {
            "name": "Web3",
            "slug": "web3"
          }
        ],
        "triggers_count": 0,
        "tools_count": 24
      },
      "deprecated": {
        "toolkitId": "1bf10c8b-2557-4b21-bae2-a4301ecc19f5"
      },
      "actions": [
        {
          "name": "create_item_offer",
          "description": "Create an offer to purchase a single nft (erc721 or erc1155)."
        },
        {
          "name": "create_listing",
          "description": "List a single nft (erc721 or erc1155) for sale on the opensea marketplace."
        },
        {
          "name": "fulfill_listing",
          "description": "Retrieve all the information, including signatures, needed to fulfill a listing directly onchain."
        },
        {
          "name": "get_account",
          "description": "Get an opensea account profile including details such as bio, social media usernames, and profile image."
        },
        {
          "name": "get_best_listings_by_collection",
          "description": "Get the cheapest priced active, valid listings on a single collection."
        },
        {
          "name": "get_collection",
          "description": "Get a single collection including details such as fees, traits, and links."
        },
        {
          "name": "get_collection_stats",
          "description": "Get stats for a single collection on opensea."
        },
        {
          "name": "get_nft",
          "description": "Get metadata, traits, ownership information, and rarity for a single nft."
        },
        {
          "name": "get_order",
          "description": "Get a single order, offer or listing, by its order hash. protocol and chain are required to prevent hash collisions."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/open_sea/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"open_sea\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.OPEN_SEA])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "open_sea"
    },
    "humanloop": {
      "name": "Humanloop",
      "slug": "humanloop",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "humanloop_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Humanloop API key",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.humanloop.com/v4"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-04T09:12:18.804Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Humanloop helps developers build and refine AI applications, offering user feedback loops, model training, and data annotation to iterate on language model performance",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//humanloop.jpeg",
        "app_url": "https://humanloop.com",
        "categories": [
          {
            "name": "AI & Machine Learning",
            "slug": "ai-&-machine-learning"
          }
        ],
        "triggers_count": 0,
        "tools_count": 4
      },
      "deprecated": {
        "toolkitId": "28a3994a-e801-49d6-a422-7dbfe80168a6"
      },
      "actions": [
        {
          "name": "create_project",
          "description": "This tool creates a new project in humanloop. it is an independent action that generates a project by accepting a project's name (required), an optional description, and an optional organization id. upon execution, it returns details of the created project, including the project's id, name, description, created at timestamp, and organization id."
        },
        {
          "name": "delete_project",
          "description": "This tool allows you to delete a specific project from your humanloop organization. the deletion is permanent and cannot be undone. all associated data, including sessions, datapoints, and evaluations linked to the project, will be permanently removed."
        },
        {
          "name": "list_experiments",
          "description": "This tool retrieves an array of experiments associated with a specific project in humanloop. it requires a project id (starting with 'pr ') and returns details including experiment id, name, description, creation timestamp, status, configuration details, and metrics/results. it is useful for monitoring experiments, analyzing results, tracking model configurations, and comparing experimental setups."
        },
        {
          "name": "list_sessions",
          "description": "This tool retrieves a paginated list of sessions for a specific project in humanloop. it requires a project id (and optionally, page and size for pagination) and returns session details such as id, reference id, project information, datapoints count, first inputs, last output, created at, and updated at. this enables users to monitor and analyze historical project interactions."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/humanloop/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"humanloop\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.HUMANLOOP])",
      "metadata": {
        "totalDownloads": "153",
        "activeUsers": "14",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "humanloop"
    },
    "zoominfo": {
      "name": "Zoominfo",
      "slug": "zoominfo",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "zoominfo_jwt_auth_scheme",
          "mode": "BASIC_WITH_JWT",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "username",
                  "displayName": "Username",
                  "type": "string",
                  "default": null,
                  "description": "Your Zoominfo username",
                  "required": true
                },
                {
                  "name": "password",
                  "displayName": "Password",
                  "type": "string",
                  "default": null,
                  "description": "Your Zoominfo password",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.zoominfo.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-12-31T18:09:42.884Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "ZoomInfo is a multiplatform operating system that revenue teams use to deliver business growth.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/agencyzoom_logo.jpeg",
        "app_url": "https://www.zoominfo.com/",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          }
        ],
        "triggers_count": 0,
        "tools_count": 17
      },
      "deprecated": {
        "toolkitId": "9677b060-be0e-4dee-bca1-ee68c2964f21"
      },
      "actions": [
        {
          "name": "search_news",
          "description": "Returns a list of news articles from zoominfo's data which meet the specified search criteria. all inputs are optional, but you must use at least one input parameter to generate a successful response."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/zoominfo/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"zoominfo\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ZOOMINFO])",
      "metadata": {
        "totalDownloads": "111",
        "activeUsers": "26",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "zoominfo"
    },
    "gong": {
      "name": "Gong",
      "slug": "gong",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "gong_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Gong API key for authentication. Obtain it from your Gong settings.",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": null,
                  "description": "The base url for your gong api",
                  "required": false
                }
              ]
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-03-05T12:45:06.921Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Gong is a platform for video meetings, call recording, and team collaboration.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/gong.png",
        "app_url": "https://www.gong.io",
        "categories": [
          {
            "name": "collaboration",
            "slug": "collaboration"
          },
          {
            "name": "communication",
            "slug": "communication"
          },
          {
            "name": "scheduling",
            "slug": "scheduling"
          },
          {
            "name": "project-management",
            "slug": "project-management"
          },
          {
            "name": "analytics",
            "slug": "analytics"
          },
          {
            "name": "marketing",
            "slug": "marketing"
          }
        ],
        "triggers_count": 0,
        "tools_count": 54
      },
      "deprecated": {
        "toolkitId": "dc8bc9b8-9de9-4c28-93bb-183a10e858a9"
      },
      "actions": [
        {
          "name": "retrieve_call_data_by_date_range_v2_calls",
          "description": "List calls that took place during a specified date range. when accessed through a bearer token authorization method, this endpoint requires the scope 'api:calls:read:basic'."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/gong/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"gong\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.GONG])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "gong"
    },
    "placekey": {
      "name": "Placekey",
      "slug": "placekey",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "placekey_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Placekey API key",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.placekey.io/v1/placekey"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-10T20:50:11.570Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Placekey standardizes location data by assigning unique IDs to physical addresses, simplifying address matching and enabling data sharing across platforms",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//placekey.png",
        "app_url": "https://www.placekey.io/",
        "categories": [
          {
            "name": "Analytics & Data",
            "slug": "analytics-&-data"
          }
        ],
        "triggers_count": 0,
        "tools_count": 3
      },
      "deprecated": {
        "toolkitId": "6658d462-16e0-48d9-bcd7-ab7c3267f5ee"
      },
      "actions": [
        {
          "name": "get_geocode_from_address",
          "description": "This tool retrieves geocode information (latitude and longitude) for a given address using the placekey api. it accepts address components (street address, city, region, postal code, iso country code) and returns geocode data including the unique placekey identifier and location details."
        },
        {
          "name": "get_placekey_from_address",
          "description": "Convert a physical address into a unique placekey identifier. the placekey is a universal standard identifier for any physical place that helps in location matching, enrichment, and deduplication."
        },
        {
          "name": "get_placekey_from_coordinates",
          "description": "Get a placekey (unique identifier) for a given pair of latitude and longitude coordinates. this is the most basic and independent operation in placekey's api that requires minimal input parameters. the tool returns a \"where\" part of the placekey, which represents the physical location."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/placekey/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"placekey\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.PLACEKEY])",
      "metadata": {
        "totalDownloads": "8",
        "activeUsers": "2",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "placekey"
    },
    "textrazor": {
      "name": "Textrazor",
      "slug": "textrazor",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "textrazor_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your TextRazor API Key used for authenticating requests to the TextRazor API.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.textrazor.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "TextRazor is a natural language processing API that extracts meaning, entities, and relationships from text, powering advanced content analysis and sentiment detection",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/textrazor.svg",
        "app_url": "https://www.textrazor.com",
        "categories": [
          {
            "name": "AI & Machine Learning",
            "slug": "ai-&-machine-learning"
          }
        ],
        "triggers_count": 0,
        "tools_count": 13
      },
      "deprecated": {
        "toolkitId": "0f507191-6b39-4648-bfe1-fb6ce2055b09"
      },
      "actions": [
        {
          "name": "account_info",
          "description": "This tool retrieves comprehensive information about a textrazor account, providing essential details about the account's status, usage, and limits. it returns an account object containing properties such as the current subscription plan, concurrent request limits, and daily usage among others, making it crucial for monitoring api usage, managing requests, and ensuring compliance with subscription limits."
        },
        {
          "name": "classify_text",
          "description": "This tool will classify text into predefined categories using textrazor's classification capabilities. it takes input text, optional cleanup mode and language, and returns a list of relevant categories with their confidence scores from the analysis. the tool supports various built-in classifiers including: - textrazor iab: iab qag segments - textrazor iab content taxonomy 3.0: iab content taxonomy v3.0 (2022) - textrazor mediatopics 2023q1: latest iptc media topics (march 2023) - and other versions of these taxonomies"
        },
        {
          "name": "custom_classifier_manager",
          "description": "This tool manages custom classifiers in textrazor, allowing users to create, update, and manage custom classification categories."
        },
        {
          "name": "dependency_trees_action",
          "description": "The dependencytreesaction analyzes the grammatical relationships between words in text by creating dependency trees. it provides detailed syntactic analysis by identifying the grammatical relationships between words and their parent words in a sentence. this tool is useful for: - understanding sentence structure - analyzing grammatical relationships - parsing complex sentences - supporting advanced linguistic analysis tasks"
        },
        {
          "name": "dictionary_manager",
          "description": "The textrazor dictionary manager tool allows users to create, update, and manage custom entity dictionaries in textrazor. it provides endpoints for creating/updating dictionaries, listing dictionaries, getting a specific dictionary, and deleting dictionaries, as well as managing the entries within these dictionaries (adding, retrieving, and deleting entries)."
        },
        {
          "name": "extract_entailments",
          "description": "This tool extracts entailments from text using textrazor's api. it identifies words or phrases that can be logically inferred from the given text by analyzing logical implications and relationships."
        },
        {
          "name": "extract_entities",
          "description": "Extract named entities (people, places, companies, etc.) from text using textrazor's entity extraction api. the tool will identify and classify named entities within the provided text, returning detailed information about each entity including its type, confidence score, and relevance score."
        },
        {
          "name": "extract_phrases",
          "description": "The extractphrases action extracts meaningful phrases from input text using textrazor's phrase extraction capability. it analyzes text to identify important phrases and multi-word expressions that aid in tasks like content analysis, keyword extraction, and summarization."
        },
        {
          "name": "extract_relations",
          "description": "This tool extracts grammatical relations between words in the text. it identifies the relationships between different parts of sentences, including subjects, objects, and predicates. the relations extractor provides detailed syntactic analysis of the text."
        },
        {
          "name": "extract_word_senses",
          "description": "This tool performs word sense disambiguation on the input text by identifying the most likely meanings of words in context. it uses textrazor's 'senses' extractor to determine the semantic meaning and provides detailed data including word, sense, confidence score, part of speech, position, synset, and definition."
        },
        {
          "name": "spelling_correction",
          "description": "This tool performs spelling correction on the provided text using textrazor's deep spelling correction system. it analyzes the input text for spelling errors and provides context-based corrections."
        },
        {
          "name": "text_razor_analyze_content",
          "description": "A comprehensive content analysis tool that combines multiple textrazor extractors to perform a complete analysis of the input text. this action allows users to analyze text content with multiple extractors in a single api call."
        },
        {
          "name": "topic_extraction",
          "description": "A tool to extract topics from text using textrazor's topic extraction capabilities. topics represent the main themes and concepts discussed in the text, with relevance scores indicating their importance to the document."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/textrazor/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"textrazor\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.TEXTRAZOR])",
      "metadata": {
        "totalDownloads": "78",
        "activeUsers": "6",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "textrazor"
    },
    "cloudflare": {
      "name": "Cloudflare",
      "slug": "cloudflare",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "cloudflare_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "auth_email",
                  "displayName": "Cloudflare Account Email",
                  "type": "string",
                  "default": null,
                  "description": "Email address associated with the Cloudflare account.",
                  "required": true
                },
                {
                  "name": "auth_key",
                  "displayName": "Cloudflare Global API Key",
                  "type": "string",
                  "default": null,
                  "description": "Global API Key for the Cloudflare account.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.cloudflare.com/client/v4"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-06T14:19:58.203Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Cloudflare is a global network designed to make everything you connect to the Internet secure, private, fast, and reliable.",
        "logo": "https://www.cloudflare.com/favicon.ico",
        "app_url": "https://dash.cloudflare.com/sign-up",
        "categories": [
          {
            "name": "networking",
            "slug": "networking"
          },
          {
            "name": "security",
            "slug": "security"
          },
          {
            "name": "cdn",
            "slug": "cdn"
          },
          {
            "name": "dns",
            "slug": "dns"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "dd3ae68b-6e89-48e0-a929-b1329a1a3f47"
      },
      "actions": [
        {
          "name": "list_zones",
          "description": "This tool lists, searches, sorts, and filters your zones."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/cloudflare/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"cloudflare\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CLOUDFLARE])",
      "metadata": {
        "totalDownloads": "7",
        "activeUsers": "4105",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "cloudflare"
    },
    "active_campaign": {
      "name": "Active campaign",
      "slug": "active_campaign",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "activecampaign_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your ActiveCampaign API key",
                  "required": true
                },
                {
                  "name": "api_url",
                  "displayName": "API URL",
                  "type": "string",
                  "default": null,
                  "description": "Your ActiveCampaign API URL (e.g., https://youraccount.api-us1.com)",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{api_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-11-24T18:11:15.864Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "ActiveCampaign is a marketing automation and CRM platform enabling businesses to manage email campaigns, sales pipelines, and customer segmentation to boost engagement and drive growth",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master//activecampaign.png",
        "app_url": "https://www.activecampaign.com",
        "categories": [
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          },
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Sales & Customer Support",
            "slug": "sales-&-customer-support"
          }
        ],
        "triggers_count": 0,
        "tools_count": 21
      },
      "deprecated": {
        "toolkitId": "de79ca8a-4f6a-4981-93b8-93b85b6672bb"
      },
      "actions": [
        {
          "name": "add_contact_note",
          "description": "Add a note to a contact in activecampaign. the note will be associated with a contact as a subscriber type. the tool will first find the contact id using the provided email address and then create the note."
        },
        {
          "name": "add_contact_to_automation",
          "description": "This tool adds an existing contact to a specific automation in activecampaign. it first looks up the contact by email address to get their id, then adds them to the specified automation using the /api/3/contactautomations endpoint."
        },
        {
          "name": "add_secondary_contact_to_deal",
          "description": "This tool adds a secondary contact to an existing deal in activecampaign. if the deal has no primary contact set, this contact will be set as primary if no role is specified. the tool requires the user to have permission to manage deals and expects parameters like contact id (required), deal id (required), and role id (optional)."
        },
        {
          "name": "create_account",
          "description": "This tool creates a new account in activecampaign. it represents a business or organization and allows programmatic account creation. the tool requires the account name and optionally accepts parameters such as account url, owner, and custom fields."
        },
        {
          "name": "create_contact",
          "description": "Creates a new contact in activecampaign with the specified details. this action allows you to create a new contact with basic information like email, name, phone, organization details, and tags. the email address is the only required field, while all other fields are optional."
        },
        {
          "name": "create_contact_task",
          "description": "Create a task associated with a contact in activecampaign. this action allows you to create a new task that will be associated with a specific contact in your activecampaign account. the task can include details such as due date, title, description, and can be assigned to a specific user."
        },
        {
          "name": "create_deal_task_type",
          "description": "This tool creates a new deal task type in activecampaign. deal task types are used to categorize and organize tasks associated with deals, and they are an important feature for maintaining a structured task management system within the deals pipeline. this action complements the existing active campaign create deal task action by enabling the creation of custom task types that can be used when creating deal tasks."
        },
        {
          "name": "delete_account",
          "description": "This tool deletes an existing account in activecampaign. it complements the existing active campaign create account and active campaign update account actions, providing full crud capabilities for account management. the action is irreversible and will permanently remove the account from the system."
        },
        {
          "name": "delete_deal_pipeline",
          "description": "This tool deletes an existing deal pipeline in activecampaign. when deleting a pipeline that has existing deals and stages associated with it, the delete request will remove all stages and deals associated with it. this tool complements the existing active campaign create deal pipeline action and provides the ability to manage the full lifecycle of deal pipelines in activecampaign."
        },
        {
          "name": "delete_deal_stage",
          "description": "This tool deletes an existing deal stage in activecampaign. it offers the ability to either move associated deals to a new pipeline and stage (when type is 'move') or completely delete the deals (when type is 'delete'). it complements the active campaign create deal stage action, ensuring full crud functionality for deal stages."
        },
        {
          "name": "find_contact",
          "description": "Find a specific contact in activecampaign using either their email address, id, or phone number. this action provides a more efficient way to find a specific contact instead of listing all contacts."
        },
        {
          "name": "find_user_action",
          "description": "This tool allows you to find a user in activecampaign by their email address, returning detailed information including first name, last name, email, phone, organization details, and related resource links."
        },
        {
          "name": "list_all_contacts",
          "description": "List all contacts in activecampaign. this action allows you to: 1. list all contacts with pagination 2. search contacts by name, organization, phone, or email 3. filter contacts by email pattern 4. sort contacts by various fields 5. filter contacts by creation and update dates 6. filter contacts by list, tag, or segment"
        },
        {
          "name": "manage_contact_tag",
          "description": "Manage tags for a contact in activecampaign. this action allows adding or removing tags from a contact. the action can be performed using either the contact's id or email address."
        },
        {
          "name": "manage_list_subscription",
          "description": "Subscribe or unsubscribe a contact from a list in activecampaign. the tool requires either a contact's email address or contact id, and can perform either a subscribe or unsubscribe action on a specified list."
        },
        {
          "name": "remove_contact_from_automation",
          "description": "This tool removes a contact from a specified automation in activecampaign. it first looks up the contact by email address to get their id, then removes them from the specified automation using the /api/3/contactautomations endpoint. the run remove option parameter determines whether to remove them from all runs or just the latest run of the automation."
        },
        {
          "name": "track_event",
          "description": "This tool creates a custom website or application event in activecampaign by recording events through a post api endpoint. it allows tracking of specific actions performed by contacts, and includes parameters such as event key, event actid, event name, event value, and event contact email for authentication, recording, and contextual information. the tool aids in automating workflows and monitoring user engagement."
        },
        {
          "name": "update_account",
          "description": "This tool updates an existing account in activecampaign. it allows modification of account details such as name, website url, and custom fields. it complements the existing active campaign create account action and provides the ability to modify account details after creation, which is a crucial functionality for account management."
        },
        {
          "name": "upsert_account",
          "description": "This tool creates a new account if it doesn't exist or updates an existing account in activecampaign. it is particularly useful to ensure an account exists without creating duplicates, combining the functionality of create and update operations into a single action."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/active_campaign/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"active_campaign\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ACTIVE_CAMPAIGN])",
      "metadata": {
        "totalDownloads": "21",
        "activeUsers": "8",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "active_campaign"
    },
    "intercom": {
      "name": "Intercom",
      "slug": "intercom",
      "enabled": true,
      "composio_managed_auth_schemes": [
        "OAUTH2"
      ],
      "auth_config_details": [
        {
          "name": "OAuth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "read_user,write_user,read_company,write_company,read_conversation,write_conversation,read_admin,write_admin,read_tag,write_tag,read_event,write_event,read_segment,write_segment,read_count,write_count,read_data_attribute,write_data_attribute,read_ticket,write_ticket,read_team,write_team,read_note,write_note,read_news,write_news,read_article,write_article,read_webhook,write_webhook,offline_access",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.intercom.io",
                  "description": "Base URL for Intercom API requests.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "A messaging platform that allows businesses to communicate with\n    prospective and existing customers within their app, on their website,\n    through social media, or via email.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/intercom.svg",
        "app_url": "https://www.intercom.com",
        "categories": [
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Sales & Customer Support",
            "slug": "sales-&-customer-support"
          },
          {
            "name": "Marketing & Social Media",
            "slug": "marketing-&-social-media"
          }
        ],
        "triggers_count": 0,
        "tools_count": 43
      },
      "deprecated": {
        "toolkitId": "22020958-9628-4166-ba88-4917776a3827"
      },
      "actions": [
        {
          "name": "attach_a_contact_to_a_company",
          "description": "You can attach a company to a single contact."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/intercom/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"intercom\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.INTERCOM])",
      "metadata": {
        "totalDownloads": "57",
        "activeUsers": "12",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "intercom"
    },
    "echtpost": {
      "name": "Echtpost",
      "slug": "echtpost",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "echtpost_bearer_token",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.echtpost.com/v1",
                  "description": "EchtPost API Endpoint.",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "auth_token",
                  "displayName": "Authorization Token",
                  "type": "string",
                  "default": null,
                  "description": "Bearer token used for authenticating requests to the EchtPost API.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2024-05-03T11:44:32.061Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "EchtPost facilitates secure digital communication, encryption, and data privacy, providing a reliable channel for sending confidential documents and messages",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/echtpost.svg",
        "app_url": "https://echtpost.de/login",
        "categories": [
          {
            "name": "Collaboration & Communication",
            "slug": "collaboration-&-communication"
          },
          {
            "name": "Security & Compliance",
            "slug": "security-&-compliance"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "cd74a42c-6751-41c8-ba4c-ca2035f5ac42"
      },
      "actions": [
        {
          "name": "list_templates",
          "description": "This tool retrieves a list of all available templates in the echtpost account. templates serve as the base design for postcards and are essential for creating cards. the action operates independently using only an authentication token and returns detailed template information including id, name, description, preview url, type, and creation time. this action is crucial for viewing templates before creating cards and obtaining the necessary template ids for subsequent actions."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/echtpost/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"echtpost\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ECHTPOST])",
      "metadata": {
        "totalDownloads": "12",
        "activeUsers": "1",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "echtpost"
    },
    "bigmailer": {
      "name": "Bigmailer",
      "slug": "bigmailer",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "bigmailer_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "BigMailer API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key obtained from the BigMailer API key management page.",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "brand_id",
                  "displayName": "Brand ID",
                  "type": "string",
                  "default": null,
                  "description": "The unique identifier for the brand, obtained from the brand's settings page.",
                  "required": false
                },
                {
                  "name": "campaign_id",
                  "displayName": "Campaign ID",
                  "type": "string",
                  "default": null,
                  "description": "The unique identifier for the campaign, obtained from the campaign's 'API Settings' tab.",
                  "required": false
                }
              ]
            }
          },
          "proxy": {
            "base_url": "https://api.bigmailer.io/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-21T10:41:39.860Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "BigMailer is an email marketing platform designed for managing multiple brands, offering features like white-labeling, automation, and integration with Amazon SES.",
        "logo": "https://www.bigmailer.io/wp-content/uploads/2020/04/bigmailer-logo.png",
        "app_url": "https://www.bigmailer.io/",
        "categories": [
          {
            "name": "Email Marketing",
            "slug": "email-marketing"
          },
          {
            "name": "Marketing Automation",
            "slug": "marketing-automation"
          }
        ],
        "triggers_count": 0,
        "tools_count": 3
      },
      "deprecated": {
        "toolkitId": "14c0a632-7d50-4473-8106-4c1c057166ff"
      },
      "actions": [
        {
          "name": "create_transactional_campaign",
          "description": "This tool creates a new transactional campaign within a specified brand in bigmailer. it allows users to programmatically create new transactional campaigns by using the provided parameters (brandid, name, subject, fromname, fromemail, htmlcontent, etc.). the api endpoint returns details such as campaignid, name, status, and created at when a campaign is successfully created."
        },
        {
          "name": "get_user_info",
          "description": "This tool retrieves information about the authenticated user in bigmailer using the get /me endpoint. it requires only authentication and no additional parameters, making it ideal for verifying api connectivity and retrieving essential user details."
        },
        {
          "name": "list_all_brands",
          "description": "This tool retrieves a list of all brands associated with the authenticated bigmailer account. it allows users to view and manage their brands. the operation is executed via a simple get request to the /brands endpoint and requires proper authentication using the x-api-key header. the response is a json array containing information such as brand id, brand name, and other related details."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/bigmailer/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"bigmailer\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BIGMAILER])",
      "metadata": {
        "totalDownloads": "4",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "bigmailer"
    },
    "brilliant_directories": {
      "name": "Brilliant directories",
      "slug": "brilliant_directories",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "brilliant_directories_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key generated from the Brilliant Directories admin panel.",
                  "required": true
                },
                {
                  "name": "website_domain",
                  "displayName": "Website Domain",
                  "type": "string",
                  "default": null,
                  "description": "The domain of your Brilliant Directories website, e.g., 'mywebsite.com'.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{website_domain}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-20T05:32:13.158Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Brilliant Directories is an all-in-one platform that enables users to create and manage online membership communities and business directories.",
        "logo": "https://www.brilliantdirectories.com/wp-content/uploads/2019/06/brilliant-directories-logo.png",
        "app_url": "https://www.brilliantdirectories.com/",
        "categories": [
          {
            "name": "Website Builders",
            "slug": "website-builders"
          },
          {
            "name": "Membership Management",
            "slug": "membership-management"
          },
          {
            "name": "Business Directories",
            "slug": "business-directories"
          }
        ],
        "triggers_count": 0,
        "tools_count": 6
      },
      "deprecated": {
        "toolkitId": "115e9ee9-140e-497b-a560-9accf3b4e06b"
      },
      "actions": [
        {
          "name": "create_user",
          "description": "This tool creates a new user record in the brilliant directories website database. it supports creating new users with essential details such as email, password, subscriptionid and optional parameters including name, company, contact details, and address information."
        },
        {
          "name": "delete_user",
          "description": "This tool deletes an existing user record from the brilliant directories website database. it allows for the complete removal of a user record and, optionally, the deletion of the member's uploaded images."
        },
        {
          "name": "get_data_categories",
          "description": "This tool fetches all data categories in a brilliant directories website. data categories are distinct from top categories and represent the various types of data organization within the system."
        },
        {
          "name": "get_lead_fields",
          "description": "This tool retrieves all available fields in the leads table from a brilliant directories website. it returns a json object containing a list of fields and their associated metadata (field name, field type, field label, whether the field is required, and if it is a system field) that can be used to understand the structure and metadata of lead-related fields."
        },
        {
          "name": "get_reviews_fields",
          "description": "This tool retrieves all the available fields in the users reviews table from a brilliant directories website. it is a standalone tool that requires only authentication and provides a comprehensive list of review information such as review text, rating, timestamp, user identification fields, and any custom configured fields in the reviews system."
        },
        {
          "name": "get_user_fields",
          "description": "This tool fetches all available fields from the users data table in your brilliant directories website. it provides a detailed list of available fields for user operations including creation, updating, and retrieval."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/brilliant_directories/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"brilliant_directories\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BRILLIANT_DIRECTORIES])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "brilliant_directories"
    },
    "browserless": {
      "name": "Browserless",
      "slug": "browserless",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "browserless_api_token",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_token",
                  "displayName": "API Token",
                  "type": "string",
                  "default": null,
                  "description": "Your unique API token for authenticating requests to Browserless.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://production-sfo.browserless.io"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-21T10:41:39.860Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Browserless is a service that provides headless browser automation, allowing users to run automations on their own sites with browser infrastructure.",
        "logo": "https://browserless.io/logo.png",
        "app_url": "https://browserless.io/",
        "categories": [
          {
            "name": "Browser Automation",
            "slug": "browser-automation"
          },
          {
            "name": "Web Scraping",
            "slug": "web-scraping"
          },
          {
            "name": "Headless Browsing",
            "slug": "headless-browsing"
          }
        ],
        "triggers_count": 0,
        "tools_count": 7
      },
      "deprecated": {
        "toolkitId": "11f6747a-658f-4a59-97b6-9b49069df2b4"
      },
      "actions": [
        {
          "name": "download_file",
          "description": "This tool allows downloading files that chrome has downloaded during the execution of puppeteer code. it sets up a blank page, creates a fresh download directory, injects the provided code, and executes it. once the script finishes, any downloaded files from chromium are returned with the appropriate content-type header."
        },
        {
          "name": "execute_custom_function",
          "description": "A tool that allows executing custom puppeteer scripts via http requests. this endpoint enables users to run browser automation tasks without managing their own infrastructure."
        },
        {
          "name": "fetch_html_content",
          "description": "This tool fetches the complete html content of a webpage using browserless's content api. it's designed to retrieve the full html contents of any website, including dynamically generated content."
        },
        {
          "name": "generate_pdf",
          "description": "This tool generates a pdf from a specified webpage using browserless's pdf generation api. it allows specifying the url of the webpage along with parameters such as format, filename, and waituntil options to control the pdf generation process."
        },
        {
          "name": "scrape_content",
          "description": "A tool to extract structured content from a webpage by specifying css selectors. the tool navigates to the specified url, waits for the page to load (including parsing and executing javascript), and returns the selected elements in a structured json format."
        },
        {
          "name": "take_screenshot",
          "description": "A tool that captures a screenshot of a webpage using browserless's screenshot api. the tool takes a url and returns either a png or jpeg image. it includes options for full page capture, image type, quality, and clipping coordinates."
        },
        {
          "name": "unblock_protected_content",
          "description": "This tool provides access to content from websites that implement bot protection mechanisms. it is designed to bypass various types of protection (such as captcha and bot detections) and return the html content of the protected webpage, with optional customization through parameters like waitfor, timeout, and stealth mode."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/browserless/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"browserless\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BROWSERLESS])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "browserless"
    },
    "bugbug": {
      "name": "Bugbug",
      "slug": "bugbug",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your API key",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.bugbug.io/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-04-24T15:29:36.090Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Bugbug is a platform for testing and monitoring your code.",
        "logo": "https://bugbug.io/favicon.ico",
        "app_url": "https://bugbug.io​",
        "categories": [
          {
            "name": "Testing",
            "slug": "testing"
          },
          {
            "name": "Monitoring",
            "slug": "monitoring"
          }
        ],
        "triggers_count": 0,
        "tools_count": 4
      },
      "deprecated": {
        "toolkitId": "79a610f9-e724-42f0-9488-69d19c8f61dd"
      },
      "actions": [
        {
          "name": "get_test_run_details",
          "description": "Get detailed information about test runs from bugbug. this action retrieves test run details with optional filtering parameters."
        },
        {
          "name": "list_suites",
          "description": "List all available test suites in the bugbug platform. this tool makes a get request to the /suites/ endpoint and returns a list of available test suites with pagination support."
        },
        {
          "name": "list_tests",
          "description": "Retrieves a list of all available tests in the bugbug account. this action provides access to all tests in the account with pagination support. it returns basic information about each test including its id, name, description, and timestamps."
        },
        {
          "name": "run_test",
          "description": "Execute a test in bugbug and return the test run details. this action allows you to run a specific test with optional configuration for browser, device, viewport, and variable overrides. it returns detailed information about the test run including step-by-step execution status."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/bugbug/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"bugbug\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.BUGBUG])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "bugbug"
    },
    "clockify": {
      "name": "Clockify",
      "slug": "clockify",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "clockify_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "subdomain",
                  "displayName": "Subdomain",
                  "type": "string",
                  "default": null,
                  "description": "The unique subdomain associated with the user's organization or workspace instance on Clockify (e.g., 'companyX' in https://companyX.clockify.me).",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{subdomain}}.clockify.me"
          }
        },
        {
          "name": "clockify_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Clockify API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key generated from your Clockify account, used for authenticating API requests.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.clockify.me/api/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-21T10:41:39.860Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Clockify is a free time tracking software that allows individuals and teams to track work hours across projects.",
        "logo": "https://clockify.me/assets/images/clockify-logo.svg",
        "app_url": "https://clockify.me/",
        "categories": [
          {
            "name": "Time Tracking",
            "slug": "time-tracking"
          },
          {
            "name": "Project Management",
            "slug": "project-management"
          },
          {
            "name": "Productivity",
            "slug": "productivity"
          }
        ],
        "triggers_count": 0,
        "tools_count": 14
      },
      "deprecated": {
        "toolkitId": "ce903fce-b514-401f-8032-f77d42926a0a"
      },
      "actions": [
        {
          "name": "add_members_to_project",
          "description": "This tool allows you to add one or more members to a specific project in clockify by updating memberships. it requires the workspace id, project id, and a list of member objects including user ids and their rates."
        },
        {
          "name": "create_client",
          "description": "Creates a new client in a specified clockify workspace. this tool allows users to add new clients to their clockify account, which can then be associated with projects and time entries."
        },
        {
          "name": "create_project",
          "description": "This tool creates a new project in a specified clockify workspace. it is essential for project management and time tracking in clockify and requires parameters such as workspaceid and name, with additional optional parameters like clientid, ispublic, billable, and color."
        },
        {
          "name": "create_tag",
          "description": "This tool creates a new tag in a specified clockify workspace. tags are useful for categorizing and organizing time entries."
        },
        {
          "name": "create_task",
          "description": "This tool creates a new task within a specified project in clockify. it requires a workspaceid, projectid, and task name, with an optional status parameter which defaults to 'active'."
        },
        {
          "name": "create_time_entry",
          "description": "This tool creates a new time entry in clockify with specified start and end times. it is different from real-time timer functionality as it allows for the creation of entries for past work or scheduling future tasks. it uses basic time entry details including description, start, end, and billable status."
        },
        {
          "name": "find_client",
          "description": "This tool allows users to find a client by name in a specified workspace in clockify. it searches through the list of clients and returns the matching client's details. it requires a workspace id and a client name to perform a case-insensitive search, and optionally accepts an 'archived' flag to include archived clients."
        },
        {
          "name": "find_project",
          "description": "This tool allows users to find and retrieve information about projects in clockify. the tool searches for projects by name within a specified workspace and supports various filtering options. it retrieves project details such as project id, project name, client information, workspace information, project status, and other relevant project metadata."
        },
        {
          "name": "find_task",
          "description": "This tool allows you to find a task by name within a specific project and workspace in clockify. it returns detailed information about the matching task including its id, name, status, and other properties."
        },
        {
          "name": "find_time_entry",
          "description": "This tool allows users to search and find time entries within a specified workspace. it can filter entries based on various criteria, including description, start datetime, end datetime, projectid, taskid, and tagids. the output is a list of time entries with details such as id, description, userid, billable status, projectid, timeinterval, workspaceid, tagids, and taskid."
        },
        {
          "name": "get_all_workspaces",
          "description": "This tool retrieves all workspaces for the currently authenticated user. it provides essential workspace information needed for other api operations."
        },
        {
          "name": "get_current_user",
          "description": "This tool retrieves information about the currently authenticated user in clockify. it doesn't require any additional parameters beyond authentication, and returns a json object with user details like id, name, email, and activeworkspace."
        },
        {
          "name": "start_timer",
          "description": "This tool starts a new time entry in clockify and initiates a running timer. it accepts parameters such as description, billable, project name, task name, and tags, allowing for flexible configurations based on user inputs."
        },
        {
          "name": "stop_timer",
          "description": "This tool stops the currently running time entry for the authenticated user in the specified workspace. it automatically uses the given workspace id (which can be obtained from the 'get all workspaces' tool) and the current timestamp to stop the timer by calling the patch /workspaces/{workspaceid}/user/{userid}/time-entries endpoint."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/clockify/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"clockify\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CLOCKIFY])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "clockify"
    },
    "cutt_ly": {
      "name": "Cutt ly",
      "slug": "cutt_ly",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "cuttly_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Cutt.ly API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your API key for authenticating requests to the Cutt.ly API.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://cutt.ly/api/api.php"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-22T20:39:46.765Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Cutt.ly is a URL shortening service that allows users to shorten, manage, and analyze URLs.",
        "logo": "https://cutt.ly/favicon.ico",
        "app_url": "https://cutt.ly/",
        "categories": [
          {
            "name": "URL Shortening",
            "slug": "url-shortening"
          },
          {
            "name": "Link Management",
            "slug": "link-management"
          },
          {
            "name": "Analytics",
            "slug": "analytics"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "8364f2d3-2277-482d-858b-3c7a12dc9cea"
      },
      "actions": [
        {
          "name": "view_last_shortened_urls",
          "description": "This action retrieves a list of recently shortened urls from your cutt.ly account. it allows users to view their latest shortened links and their details. note: due to api limitations, this action may not return all historical urls. for complete history, please use the cutt.ly dashboard."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/cutt_ly/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"cutt_ly\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.CUTT_LY])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "cutt_ly"
    },
    "emailoctopus": {
      "name": "Emailoctopus",
      "slug": "emailoctopus",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "emailoctopus_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your EmailOctopus API key.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://emailoctopus.com/api/v2"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-21T10:41:39.860Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "EmailOctopus is an email marketing platform founded in 2015, offering affordable and intuitive solutions for individuals and businesses to connect with their subscribers.",
        "logo": "https://emailoctopus.com/logo.png",
        "app_url": "https://emailoctopus.com/",
        "categories": [
          {
            "name": "Email Marketing",
            "slug": "email-marketing"
          },
          {
            "name": "Marketing Automation",
            "slug": "marketing-automation"
          }
        ],
        "triggers_count": 0,
        "tools_count": 7
      },
      "deprecated": {
        "toolkitId": "344b71fc-e11e-4479-ab80-2aaf1811d358"
      },
      "actions": [
        {
          "name": "create_contact",
          "description": "This tool creates a new contact in emailoctopus. the tool will add a contact to a specified list with the provided information."
        },
        {
          "name": "create_list",
          "description": "This tool creates a new mailing list in emailoctopus. it allows users to create a new list where contacts can be added and managed."
        },
        {
          "name": "delete_contact",
          "description": "This tool allows you to delete a contact from a specified list in emailoctopus. it uses the delete /api/1.6/lists/{list id}/contacts/{contact id} endpoint to permanently remove the contact from the list. this action is irreversible and is essential for list management and data privacy compliance."
        },
        {
          "name": "delete_list",
          "description": "This tool allows you to delete an existing mailing list from your emailoctopus account. once a list is deleted, it cannot be recovered, and all contacts within the list will be permanently removed. note: lists can only be deleted if no contacts within the list have received an email in the last 7 days."
        },
        {
          "name": "get_all_lists",
          "description": "This tool retrieves all the mailing lists associated with the emailoctopus account."
        },
        {
          "name": "get_recent_campaigns",
          "description": "This tool retrieves a list of recent campaigns from the emailoctopus account. it uses the get endpoint at https://emailoctopus.com/api/1.6/campaigns and allows filtering by parameters like limit and page."
        },
        {
          "name": "unsubscribe_contact",
          "description": "This tool unsubscribes a contact from an emailoctopus list. it takes an email address as input, retrieves the contact's details using the find contact functionality, and unsubscribes the contact from the associated list."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/emailoctopus/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"emailoctopus\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.EMAILOCTOPUS])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "emailoctopus"
    },
    "enigma": {
      "name": "Enigma",
      "slug": "enigma",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "enigma_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Enigma API key used for authentication.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.enigma.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-21T10:41:39.860Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Enigma provides comprehensive data on U.S. businesses, offering insights into their identity and financial health to support sales, marketing, risk assessment, and compliance processes.",
        "logo": "https://www.enigma.com/favicon.ico",
        "app_url": "https://www.enigma.com/",
        "categories": [
          {
            "name": "Data Services",
            "slug": "data-services"
          },
          {
            "name": "Business Intelligence",
            "slug": "business-intelligence"
          },
          {
            "name": "Risk Management",
            "slug": "risk-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 2
      },
      "deprecated": {
        "toolkitId": "2e8b4485-7dc6-4584-ad43-7ffd4131f381"
      },
      "actions": [
        {
          "name": "kyb_verification",
          "description": "This tool performs a know your business (kyb) check on a business by querying enigma's dataset of legal entities based on official state records. it verifies business information and returns comprehensive details about the business, including best match, legal entities, brands, and watchlists."
        },
        {
          "name": "screening_verification",
          "description": "A tool to screen customers and transactions against sanctions and other watchlists. this endpoint allows for independent verification without requiring any external resource ids."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/enigma/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"enigma\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ENIGMA])",
      "metadata": {
        "totalDownloads": "4",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "enigma"
    },
    "excel": {
      "name": "Excel",
      "slug": "excel",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "excel_oauth",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "Files.ReadWrite,Sites.ReadWrite.All,offline_access,User.Read",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://graph.microsoft.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-04-24T15:29:36.090Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Connect to Excel to create and manage spreadsheets.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/Excel.png",
        "app_url": "https://excel.cloud.microsoft/en-us/",
        "categories": [
          {
            "name": "Data & Analytics",
            "slug": "data-&-analytics"
          }
        ],
        "triggers_count": 0,
        "tools_count": 25
      },
      "deprecated": {
        "toolkitId": "b0f3a748-7439-433a-99cb-bfb2024631db"
      },
      "actions": [
        {
          "name": "add_table",
          "description": "Create a table in a workbook using microsoft graph api."
        },
        {
          "name": "get_session",
          "description": "Create a session for an excel workbook using microsoft graph api."
        },
        {
          "name": "list_table_columns",
          "description": "List columns in a table using microsoft graph api."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/excel/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"excel\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.EXCEL])",
      "metadata": {
        "totalDownloads": "6",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "excel"
    },
    "leadfeeder": {
      "name": "Leadfeeder",
      "slug": "leadfeeder",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "leadfeeder_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_token",
                  "displayName": "API Token",
                  "type": "string",
                  "default": null,
                  "description": "Your unique API token for authenticating requests to the Leadfeeder API.",
                  "required": true
                },
                {
                  "name": "user_agent",
                  "displayName": "User Agent",
                  "type": "string",
                  "default": null,
                  "description": "The name of your application, to be included in the 'User-Agent' header of API requests.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.leadfeeder.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-22T07:46:24.528Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Leadfeeder identifies companies visiting your website and converts them into high-value leads.",
        "logo": "https://www.leadfeeder.com/wp-content/uploads/2020/06/leadfeeder-logo.svg",
        "app_url": "https://www.leadfeeder.com/",
        "categories": [
          {
            "name": "Lead Generation",
            "slug": "lead-generation"
          },
          {
            "name": "Website Visitor Tracking",
            "slug": "website-visitor-tracking"
          },
          {
            "name": "Sales Prospecting",
            "slug": "sales-prospecting"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "554995e8-a5a0-429b-972c-45a831dcf70d"
      },
      "actions": [
        {
          "name": "get_accounts",
          "description": "This tool retrieves a list of all leadfeeder accounts accessible with the provided api token."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/leadfeeder/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"leadfeeder\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.LEADFEEDER])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "leadfeeder"
    },
    "leadoku": {
      "name": "Leadoku",
      "slug": "leadoku",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "leadoku_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key provided by Leadoku for authenticating API requests.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.leadoku.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-22T20:39:47.433Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Leadoku is a platform designed to streamline lead management and sales processes.",
        "logo": "https://leadoku.com/logo.png",
        "app_url": "https://leadoku.com",
        "categories": [
          {
            "name": "Sales",
            "slug": "sales"
          },
          {
            "name": "CRM",
            "slug": "crm"
          },
          {
            "name": "Lead Management",
            "slug": "lead-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "3678fe44-3ec6-46d4-9d4d-ea3f86819cd5"
      },
      "actions": [
        {
          "name": "get_new_connections",
          "description": "Retrieves a list of new connections from growth-x (formerly leadoku). the 'tsfield' for this action is 'connection date' (mapped from 'creation date' in the api response)."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/leadoku/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"leadoku\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.LEADOKU])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "leadoku"
    },
    "lodgify": {
      "name": "Lodgify",
      "slug": "lodgify",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "lodgify_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.lodgify.com"
          }
        },
        {
          "name": "lodgify_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Lodgify API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key obtained from Lodgify's Public API settings.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.lodgify.com/v2/"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-22T07:46:24.861Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Lodgify is an all-in-one vacation rental software that enables property owners and managers to create bookable websites, synchronize property data across multiple channels, and manage guest reservations and communications from a single platform.",
        "logo": "https://www.lodgify.com/wp-content/uploads/2023/04/lodgify-logo.svg",
        "app_url": "https://www.lodgify.com/",
        "categories": [
          {
            "name": "Vacation Rental Software",
            "slug": "vacation-rental-software"
          },
          {
            "name": "Property Management Software",
            "slug": "property-management-software"
          },
          {
            "name": "Channel Management",
            "slug": "channel-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "d2ae555a-2a34-4f88-af23-45121a164964"
      },
      "actions": [
        {
          "name": "get_property_availability",
          "description": "This tool retrieves the availability information for a specific property. it requires the propertyid as an input. the response will include an array of availability objects, each containing the date, availability status, number of units available, price (amount and currency), minimum and maximum nights for booking, and any associated reservation ids for that date."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/lodgify/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"lodgify\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.LODGIFY])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "lodgify"
    },
    "nextdns": {
      "name": "Nextdns",
      "slug": "nextdns",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "nextdns_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "NextDNS API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your NextDNS API key, found at the bottom of your account page.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.nextdns.io"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-22T07:46:25.261Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "NextDNS is a DNS service that enhances internet security and privacy by blocking malicious websites, tracking scripts, and ads before they reach your device.",
        "logo": "https://nextdns.io/logo.png",
        "app_url": "https://nextdns.io/",
        "categories": [
          {
            "name": "Internet Security",
            "slug": "internet-security"
          },
          {
            "name": "Privacy",
            "slug": "privacy"
          },
          {
            "name": "DNS Services",
            "slug": "dns-services"
          }
        ],
        "triggers_count": 0,
        "tools_count": 2
      },
      "deprecated": {
        "toolkitId": "a1a29e23-c716-4344-91da-c7ec21c27c2a"
      },
      "actions": [
        {
          "name": "create_profile",
          "description": "This tool allows users to create a new nextdns profile. it uses the post method at the endpoint https://api.nextdns.io/profiles. a profile is a distinct configuration set for dns filtering and security settings."
        },
        {
          "name": "get_profile",
          "description": "Retrieves the details of a specific nextdns profile. it requires a 'profileid' as a path parameter and returns the profile details including name, security, privacy, parental control, denylist, allowlist, and general settings."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/nextdns/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"nextdns\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.NEXTDNS])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "nextdns"
    },
    "quickbooks": {
      "name": "Quickbooks",
      "slug": "quickbooks",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "quickbooks_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "com.intuit.quickbooks.accounting,com.intuit.quickbooks.payment,openid,profile,email,phone,address",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "realm_id",
                  "displayName": "Realm ID",
                  "type": "string",
                  "default": null,
                  "description": "The realm ID for Quickbooks",
                  "required": true
                },
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://quickbooks.api.intuit.com",
                  "description": "The API base URL for Quickbooks",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "minor_version",
                  "displayName": "Minor Version",
                  "type": "string",
                  "default": "75",
                  "description": "The minor version of the API",
                  "required": false
                }
              ]
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-04-08T13:09:22.581Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Quickbooks is a cloud-based accounting software that helps you manage your finances, track your income and expenses, and get insights into your business",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/quickbooks.jpg",
        "app_url": "https://quickbooks.intuit.com",
        "categories": [
          {
            "name": "Finance & Accounting",
            "slug": "finance-&-accounting"
          }
        ],
        "triggers_count": 0,
        "tools_count": 13
      },
      "deprecated": {
        "toolkitId": "7249fc93-504b-4aa1-8dc6-60e87bd96ec6"
      },
      "actions": [
        {
          "name": "create_account",
          "description": "Create a new account in quickbooks with the given parameters."
        },
        {
          "name": "create_customer",
          "description": "Create a new customer in quickbooks with the given parameters."
        },
        {
          "name": "create_employee",
          "description": "Create a new employee in quickbooks."
        },
        {
          "name": "create_vendor",
          "description": "Create a new vendor in quickbooks with the given details."
        },
        {
          "name": "customer_balance_detail",
          "description": "Generate a balance detail report for a customer in quickbooks with the given customer id."
        },
        {
          "name": "customer_balance_report",
          "description": "Generate a balance report for a customer in quickbooks with the given customer id."
        },
        {
          "name": "query_account",
          "description": "Query an account in quickbooks with the given parameters."
        },
        {
          "name": "read_account",
          "description": "Read an account in quickbooks with the given account id."
        },
        {
          "name": "read_customer",
          "description": "Read a customer in quickbooks with the given customer id."
        },
        {
          "name": "read_employee",
          "description": "Read an employee's details in quickbooks with the given employee id."
        },
        {
          "name": "read_vendor",
          "description": "Read a vendor in quickbooks with the given vendor id."
        },
        {
          "name": "vendor_balance_detail",
          "description": "Generate a balance detail report for a vendor in quickbooks with the given vendor id."
        },
        {
          "name": "vendor_balance_report",
          "description": "Get the balance report of a vendor in quickbooks with the given vendor id."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/quickbooks/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"quickbooks\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.QUICKBOOKS])",
      "metadata": {
        "totalDownloads": "131",
        "activeUsers": "16",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "quickbooks"
    },
    "ragic": {
      "name": "Ragic",
      "slug": "ragic",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "ragic_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Ragic API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Ragic API key, obtainable from Personal Settings > Profile.",
                  "required": true
                },
                {
                  "name": "server_location",
                  "displayName": "Server Location",
                  "type": "string",
                  "default": null,
                  "description": "The server location for your Ragic account, such as 'na3', 'ap5', or 'eu2'.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://{{server_location}}.ragic.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-22T07:46:25.875Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Ragic is a web-based database builder that allows users to create and manage databases as easily as creating a spreadsheet.",
        "logo": "https://www.ragic.com/images/logo.png",
        "app_url": "https://www.ragic.com/",
        "categories": [
          {
            "name": "Database Management",
            "slug": "database-management"
          },
          {
            "name": "No-Code Development",
            "slug": "no-code-development"
          },
          {
            "name": "Business Productivity",
            "slug": "business-productivity"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "14041d38-d767-4e0c-ae01-81affebdf761"
      },
      "actions": [
        {
          "name": "search_records",
          "description": "Search records"
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/ragic/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"ragic\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.RAGIC])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "ragic"
    },
    "ramp": {
      "name": "Ramp",
      "slug": "ramp",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "ramp_oauth2",
          "mode": "OAUTH2",
          "fields": {
            "auth_config_creation": {
              "required": [
                {
                  "name": "client_id",
                  "displayName": "Client id",
                  "type": "string",
                  "description": "Client id of the app",
                  "required": true
                },
                {
                  "name": "client_secret",
                  "displayName": "Client secret",
                  "type": "string",
                  "description": "Client secret of the app",
                  "required": true
                }
              ],
              "optional": [
                {
                  "name": "oauth_redirect_uri",
                  "displayName": "Redirect URI",
                  "type": "string",
                  "default": "https://backend.composio.dev/api/v1/auth-apps/add",
                  "description": "Add this Redirect URL to your app's OAuth allow list.",
                  "required": false
                },
                {
                  "name": "scopes",
                  "displayName": "Scopes",
                  "type": "string",
                  "default": "transactions:read,accounting:write,accounting:read",
                  "description": "Scopes to request from the user, comma separated",
                  "required": false
                }
              ]
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "base_url",
                  "displayName": "Base URL",
                  "type": "string",
                  "default": "https://api.ramp.com/developer/v1",
                  "description": "The base URL for Ramp",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "{{base_url}}"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-04-17T11:34:56.861Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Ramp is a comprehensive finance platform designed to help you manage\n    your finances, track your income and expenses, and get insights into\n    your business. The Ramp API provides developers with the tools to\n    interact with the platform programmatically.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/ramp.svg",
        "app_url": "https://ramp.com/",
        "categories": [
          {
            "name": "Finance & Accounting",
            "slug": "finance-&-accounting"
          }
        ],
        "triggers_count": 0,
        "tools_count": 8
      },
      "deprecated": {
        "toolkitId": "0aaa61b2-2b7b-4295-bb26-aca2430e2bee"
      },
      "actions": [
        {
          "name": "accounting_sync",
          "description": "Tool for syncing accounting data."
        },
        {
          "name": "create_new_custom_accounting_field",
          "description": "Tool for creating a new custom accounting field."
        },
        {
          "name": "delete_custom_accounting_field",
          "description": "Tool for deleting a custom accounting field."
        },
        {
          "name": "delete_custom_accounting_field_option",
          "description": "Tool for deleting an option for a given accounting field."
        },
        {
          "name": "fetch_custom_accounting_field",
          "description": "Tool for fetching a custom accounting field."
        },
        {
          "name": "options_for_custom_accounting_field",
          "description": "Tool for listing options for a given accounting field."
        },
        {
          "name": "update_accounting_field_option",
          "description": "Tool for updating an option for a given accounting field."
        },
        {
          "name": "upload_new_options",
          "description": "Tool for uploading new options for a given accounting field."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/ramp/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"ramp\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.RAMP])",
      "metadata": {
        "totalDownloads": "47",
        "activeUsers": "11",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "ramp"
    },
    "resend": {
      "name": "Resend",
      "slug": "resend",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "resend_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Resend API key. Obtain it from your Resend Dashboard under API Keys.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.resend.com"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-04-07T12:37:30.035Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Connect to Resend to send emails.",
        "logo": "https://cdn.jsdelivr.net/gh/ComposioHQ/open-logos@master/resend.png",
        "app_url": "https://resend.com",
        "categories": [
          {
            "name": "Email",
            "slug": "email"
          }
        ],
        "triggers_count": 0,
        "tools_count": 18
      },
      "deprecated": {
        "toolkitId": "4c518ea1-39d9-4496-a4f0-7c0da0167579"
      },
      "actions": [
        {
          "name": "send_email",
          "description": "Send an email using resend."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/resend/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"resend\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.RESEND])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "resend"
    },
    "rootly": {
      "name": "Rootly",
      "slug": "rootly",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "rootly_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Rootly API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key used for authenticating requests to the Rootly API.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.rootly.com/v1/"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-09T09:46:32.504Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Rootly is an AI-native incident management platform that automates workflows and collaboration, integrating with Slack, PagerDuty, and other tools to streamline incident response.",
        "logo": "https://rootly.com/favicon.ico",
        "app_url": "https://rootly.com",
        "categories": [
          {
            "name": "Incident Management",
            "slug": "incident-management"
          },
          {
            "name": "DevOps",
            "slug": "devops"
          },
          {
            "name": "IT Operations",
            "slug": "it-operations"
          },
          {
            "name": "Automation",
            "slug": "automation"
          },
          {
            "name": "Collaboration",
            "slug": "collaboration"
          }
        ],
        "triggers_count": 0,
        "tools_count": 3
      },
      "deprecated": {
        "toolkitId": "5992f7d7-4fed-4937-8e9b-080b63238695"
      },
      "actions": [
        {
          "name": "delete_action_item",
          "description": "This tool allows for the deletion of a specific action item in rootly. it complements the existing rootly list action items functionality by providing the ability to remove individual action items from the system."
        },
        {
          "name": "get_action_item",
          "description": "This tool retrieves a single action item by its id from rootly using a get request to https://api.rootly.com/v1/action items/{id}. it provides detailed information about an action item including summary, description, kind, assigned to, priority, status, due date, and more. it complements other action item management tools."
        },
        {
          "name": "list_action_items",
          "description": "This tool retrieves a list of all action items for an organization in rootly. action items are tasks or follow-up items that need to be completed during or after an incident, helping to track and manage incident-related tasks effectively."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/rootly/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"rootly\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ROOTLY])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "rootly"
    },
    "rosette_text_analytics": {
      "name": "Rosette text analytics",
      "slug": "rosette_text_analytics",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "rosette_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "rosette_api_key",
                  "displayName": "Rosette API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your Rosette API key",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.rosette.com/rest/v1"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-22T07:46:25.959Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Rosette Text Analytics is a platform that uses natural language processing, statistical modeling, and machine learning to analyze unstructured and semi-structured text across 364 language-encoding-script combinations, revealing valuable information and actionable data.",
        "logo": "https://developer.rosette.com/images/rosette-logo.png",
        "app_url": "https://developer.rosette.com/signup",
        "categories": [
          {
            "name": "Natural Language Processing",
            "slug": "natural-language-processing"
          },
          {
            "name": "Text Analytics",
            "slug": "text-analytics"
          },
          {
            "name": "Machine Learning",
            "slug": "machine-learning"
          }
        ],
        "triggers_count": 0,
        "tools_count": 3
      },
      "deprecated": {
        "toolkitId": "ab00919e-da0a-4a2a-b9d6-1e6dac2daf6f"
      },
      "actions": [
        {
          "name": "address_similarity",
          "description": "Compares two addresses and returns a similarity score. addresses can be provided as single strings or as structured objects. the tool is optimized for english, simplified chinese, and traditional chinese addresses."
        },
        {
          "name": "language_identification",
          "description": "This tool identifies the natural language of a given text. it takes a string of text as input and returns the detected language along with a confidence score. optional parameters include specifying a genre (e.g., \"social-media\"), providing a list of language codes to constrain the identification, and indicating whether to include user-defined languages."
        },
        {
          "name": "name_similarity",
          "description": "The 'name similarity' tool compares two entity names (person, location, or organization) and returns a similarity score between 0 and 1 to indicate if the names are similar. it is useful for tasks such as record linkage, identity resolution, and data deduplication."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/rosette_text_analytics/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"rosette_text_analytics\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.ROSETTE_TEXT_ANALYTICS])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "rosette_text_analytics"
    },
    "scrape_do": {
      "name": "Scrape do",
      "slug": "scrape_do",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "scrape_do_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "scrape_do_api_token",
                  "displayName": "Scrape.do API Token",
                  "type": "string",
                  "default": null,
                  "description": "Enter your Scrape.do API token, which you can find in your Scrape.do dashboard.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.scrape.do"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-14T23:48:10.968Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Scrape.do is a web scraping API offering rotating residential, data-center, and mobile proxies with headless browser support and session management to bypass anti-bot protections (e.g., Cloudflare, Akamai) and extract data at scale in formats like JSON and HTML.",
        "logo": "https://scrape.do/favicon.ico",
        "app_url": "https://scrape.do",
        "categories": [
          {
            "name": "Web Scraping",
            "slug": "web-scraping"
          },
          {
            "name": "Data Extraction",
            "slug": "data-extraction"
          }
        ],
        "triggers_count": 0,
        "tools_count": 19
      },
      "deprecated": {
        "toolkitId": "00860c09-b40a-40b2-ac52-570275311c40"
      },
      "actions": [
        {
          "name": "get_account_info",
          "description": "Retrieves account information and usage statistics from scrape.do. this action makes a get request to the scrape.do info endpoint to fetch: - subscription status - concurrent request limits and usage - monthly request limits and remaining requests - real-time usage statistics rate limit: maximum 10 requests per minute"
        },
        {
          "name": "get_render_page",
          "description": "This tool allows you to scrape web pages with javascript rendering enabled. it's particularly useful for scraping dynamic websites where content is loaded through javascript. the tool will wait for the javascript to execute and return the fully rendered html content."
        },
        {
          "name": "scrape_do_get_page",
          "description": "A tool to scrape web pages using scrape.do's api service. it makes a basic get request to fetch the content of a target webpage while handling anti-bot protections and proxy rotation automatically."
        },
        {
          "name": "scrape_do_proxy_mode",
          "description": "This tool implements the proxy mode functionality of scrape.do, which allows routing requests through their proxy server. it provides an alternative way to access web scraping capabilities by handling complex javascript-rendered pages, geolocation-based routing, device simulation, and built-in anti-bot and retry mechanisms."
        },
        {
          "name": "scrape_do_set_cookies",
          "description": "This tool allows users to set specific cookies for their scraping requests to a target website. it is useful for maintaining session states or authentication through cookies."
        },
        {
          "name": "scrape_do_set_super_mode",
          "description": "The scrape do set super mode tool enables enhanced scraping by using residential and mobile proxies, bypassing blocks and restrictions associated with datacenter ips. when the 'super' parameter is set to true, it activates a mode that leverages a network of residential ip addresses, which is particularly useful to bypass strict anti-bot measures and for accessing websites that block datacenter ips."
        },
        {
          "name": "set_block_urls",
          "description": "This tool allows users to block specific urls during the scraping process. it's particularly useful for blocking unwanted resources like analytics scripts, advertisements, or any other urls that might interfere with the scraping process or slow it down. it provides granular control by allowing users to specify url patterns to block, thereby improving scraping performance and maintaining privacy."
        },
        {
          "name": "set_custom_headers",
          "description": "A tool to send custom headers with scrape.do requests. this allows simulating specific browser behaviors or adding authentication headers by controlling all headers sent to the target website."
        },
        {
          "name": "set_custom_wait",
          "description": "This tool sets the custom wait time in milliseconds after page load when using the render option in scrape.do. it is particularly useful for dealing with dynamic content to ensure that it is fully loaded before scraping, especially on javascript-heavy websites or single-page applications. the action allows fine-tuned control over the rendering wait time and must be used with render=true."
        },
        {
          "name": "set_device_type",
          "description": "This tool allows users to set the device type (desktop, mobile, or tablet) for making scraping requests. it is used to emulate different devices, which helps in testing responsive designs or fetching device-specific content."
        },
        {
          "name": "set_disable_redirection",
          "description": "Controls the automatic redirection behavior of scrape.do requests. when enabled (disable redirection=true), prevents the automatic following of redirects during web scraping operations. this allows: - inspection of the redirect chain - capturing intermediate redirect responses - manual control of redirection flow - analysis of http status codes of redirect responses the redirect url will be available in the scrape.do-target-redirected-location response header."
        },
        {
          "name": "set_pure_cookies",
          "description": "This tool enables getting the original set-cookie headers from target websites instead of the processed scrape.do-cookies format. when enabled, this parameter returns the original set-cookie headers from the target website rather than using the default scrape.do-cookies header format."
        },
        {
          "name": "set_regional_geo_code",
          "description": "This tool allows users to set a broader geographical targeting by specifying a region code instead of a specific country code. this is useful when you want to scrape content from an entire region rather than a specific country. note that this feature requires super mode to be enabled and is only available for business plan or higher subscriptions."
        },
        {
          "name": "set_retry_timeout",
          "description": "This tool allows users to set the maximum wait time (in milliseconds) before retrying a failed request in scrape.do. it requires a parameter 'retry timeout' (integer) which specifies the maximum time to wait before retrying, with a default of 15000 ms. it is designed to improve the reliability of web scraping operations, especially when dealing with unstable or slow-responding websites."
        },
        {
          "name": "set_screenshot",
          "description": "This tool enables the screenshot functionality for the scrape.do api, allowing users to capture a visual representation of the scraped webpage. when enabled, the api will return a screenshot of the rendered page along with the regular response. features: - basic screenshot capture - full page screenshot capture - capture specific area using css selector"
        },
        {
          "name": "set_session_id",
          "description": "This tool implements the session id functionality for scrape.do to maintain a sticky session with the same proxy ip across multiple requests. it achieves this by adding a sessionid parameter to the query parameters of any scraping request, which is crucial for ensuring session consistency when scraping websites with stringent session requirements."
        },
        {
          "name": "set_wait_for_selector",
          "description": "This action allows setting a css selector to wait for before considering the page load complete. it is particularly useful when scraping javascript-heavy pages to ensure that certain elements have loaded dynamically."
        },
        {
          "name": "set_wait_until",
          "description": "This tool sets the waituntil parameter for the scrape.do api, defining when the rendering should consider the page loaded during javascript execution. it is particularly useful for handling dynamic websites by specifying conditions such as 'domcontentloaded', 'networkidle0', or 'networkidle2'."
        },
        {
          "name": "show_websocket_requests",
          "description": "This tool provides the ability to view websocket requests made by a webpage. it requires using render=true and returnjson=true parameters along with showwebsocketrequests=true to enable logging of websocket requests."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/scrape_do/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"scrape_do\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SCRAPE_DO])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "scrape_do"
    },
    "scrapingant": {
      "name": "Scrapingant",
      "slug": "scrapingant",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "scrapingant_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "scrapingant_api_key",
                  "displayName": "ScrapingAnt API Key",
                  "type": "string",
                  "default": null,
                  "description": "Your ScrapingAnt API key, obtainable from your user dashboard.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.scrapingant.com/v2/general"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-22T07:46:26.130Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "ScrapingAnt is a web scraping API that provides tools for data extraction, including features like Chrome page rendering, low latency rotating proxies, JavaScript execution, and unlimited parallel requests.",
        "logo": "https://scrapingant.com/favicon.ico",
        "app_url": "https://scrapingant.com",
        "categories": [
          {
            "name": "Web Scraping",
            "slug": "web-scraping"
          },
          {
            "name": "Data Extraction",
            "slug": "data-extraction"
          },
          {
            "name": "API Services",
            "slug": "api-services"
          }
        ],
        "triggers_count": 0,
        "tools_count": 5
      },
      "deprecated": {
        "toolkitId": "4a232d47-e7f4-47b8-b50a-38e10b36720c"
      },
      "actions": [
        {
          "name": "extract_content_as_markdown",
          "description": "This tool extracts content from a given url and converts it into markdown format. it is particularly useful for preparing text for language learning models (llms) and retrieval-augmented generation (rag) systems. it supports get, post, put, and delete methods."
        },
        {
          "name": "extract_data_with_ai",
          "description": "This tool allows you to extract structured data from a web page using scrapingant's ai-powered extraction capabilities. you provide a url and an ai query (prompt) describing what data you want to extract, and the tool returns the extracted data in a structured format. it supports additional parameters for browser rendering, proxies, and cookies to handle dynamic content and localization."
        },
        {
          "name": "get_api_credits_usage",
          "description": "This tool retrieves the current api credit usage status for the authenticated scrapingant account. it enables users to monitor their consumption of api credits, check their current usage against the subscription limits, and manage their api credits effectively."
        },
        {
          "name": "scrape_web_page",
          "description": "This tool scrapes a web page using the scrapingant api. it fetches the html content of the specified url. users can customize the scraping behavior by enabling a headless browser, using proxies, waiting for specific elements, executing javascript, passing cookies, and blocking certain resources."
        },
        {
          "name": "scrape_with_extended_json_output",
          "description": "This tool scrapes a target url and returns an extended json response. it utilizes scrapingant's /v2/extended endpoint, providing richer information than the standard scraping tool, including page html, cookies, headers, and additional details."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/scrapingant/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"scrapingant\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.SCRAPINGANT])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "scrapingant"
    },
    "starton": {
      "name": "Starton",
      "slug": "starton",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "starton_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "Starton API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key used to authenticate requests to the Starton API.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://api.starton.com/v3"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-22T07:46:26.616Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "Starton is an all-in-one Web3 API platform that enables developers to deploy and interact with smart contracts, store files on IPFS, and monitor blockchain events through a unified API and frontend interface.",
        "logo": "https://www.starton.com/logo.png",
        "app_url": "https://www.starton.com/",
        "categories": [
          {
            "name": "Web3 Development",
            "slug": "web3-development"
          },
          {
            "name": "Blockchain API",
            "slug": "blockchain-api"
          },
          {
            "name": "Smart Contract Management",
            "slug": "smart-contract-management"
          }
        ],
        "triggers_count": 0,
        "tools_count": 2
      },
      "deprecated": {
        "toolkitId": "0d3f5c22-00e7-4875-916c-c7171c646129"
      },
      "actions": [
        {
          "name": "upload_file_to_ipfs",
          "description": "Upload a file to ipfs. this tool allows users to upload a file to the interplanetary file system (ipfs) through the starton api. when the file is successfully uploaded, the tool returns the content identifier (cid) and a url to access the file via starton's ipfs gateway. it supports both synchronous (issync=true) and asynchronous uploads, and accepts optional metadata as a json object."
        },
        {
          "name": "upload_json_to_ipfs",
          "description": "This tool allows users to upload json content directly to the interplanetary file system (ipfs) through the starton api. it takes a name for the file and the json content itself as input. optionally, metadata can be included. upon successful upload, it returns the content identifier (cid) of the file on ipfs and a gateway url to access it."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/starton/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"starton\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.STARTON])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "starton"
    },
    "tpscheck": {
      "name": "Tpscheck",
      "slug": "tpscheck",
      "enabled": true,
      "composio_managed_auth_schemes": [],
      "auth_config_details": [
        {
          "name": "tpscheck_api_key",
          "mode": "API_KEY",
          "fields": {
            "auth_config_creation": {
              "required": [],
              "optional": []
            },
            "connected_account_initiation": {
              "required": [
                {
                  "name": "api_key",
                  "displayName": "API Key",
                  "type": "string",
                  "default": null,
                  "description": "The API key provided upon signing up for TPSCheck.uk.",
                  "required": true
                }
              ],
              "optional": []
            }
          },
          "proxy": {
            "base_url": "https://www.tpscheck.uk/api"
          }
        }
      ],
      "is_local_toolkit": false,
      "meta": {
        "created_at": "2025-05-22T07:46:27.753Z",
        "updated_at": "2025-06-09T18:28:52.217Z",
        "description": "TPSCheck is a service that verifies in real-time if a phone number is registered with the UK's Telephone Preference Service (TPS) or Corporate Telephone Preference Service (CTPS), providing insights on validity, location, type, and provider of the number.",
        "logo": "https://www.tpscheck.uk/logo.png",
        "app_url": "https://www.tpscheck.uk/",
        "categories": [
          {
            "name": "Compliance",
            "slug": "compliance"
          },
          {
            "name": "Telecommunications",
            "slug": "telecommunications"
          },
          {
            "name": "Marketing Automation",
            "slug": "marketing-automation"
          }
        ],
        "triggers_count": 0,
        "tools_count": 1
      },
      "deprecated": {
        "toolkitId": "2d2f389a-e741-422d-8cc8-fe4db795ee47"
      },
      "actions": [
        {
          "name": "check_phone_number",
          "description": "Checks if one or more uk phone numbers are registered on the telephone preference service (tps) and/or corporate telephone preference service (ctps) lists using the tpsapi.com api."
        }
      ],
      "sseUrl": "https://mcp.composio.dev/partner/composio/tpscheck/mcp?customerId=",
      "typescriptCode": "import { OpenAI } from \"openai\";\n  import { OpenAIToolSet } from \"composio-core\";\n\n  const openaiClient = new OpenAI();\n  const composioToolset = new OpenAIToolSet();\n\n  const tools = await composioToolset.getTools({\n  apps: [\"tpscheck\"],\n  });",
      "pythonCode": "from composio_openai import ComposioToolSet, App\n  from openai import OpenAI\n\n  openai_client = OpenAI()\n  composio_toolset = ComposioToolSet(entity_id=\"default\")\n\n  tools = composio_toolset.get_tools(apps=[App.TPSCHECK])",
      "metadata": {
        "totalDownloads": "3",
        "activeUsers": "0",
        "latestVersion": "0.1.0",
        "lastUpdated": "6/9/2025",
        "tempDisabled": false
      },
      "key": "tpscheck"
    }
  }
}