Skip to main content
Glama

🌌 Perplexity-Comet-MCP - Effortless Web Browsing and Research

Download Now

🚀 Getting Started

Welcome to Perplexity-Comet-MCP! This application connects the Claude Code to the Perplexity Comet browser, enabling you to browse the web autonomously. You can manage multiple tabs with ease and utilize various tools for enhanced research.

🛠 Features

  • Autonomous Web Browsing: Let the application browse for you.

  • Agentic Research: Fetch information effortlessly with smart tools.

  • Multi-Tab Management: Keep several pages open without hassle.

  • Smart Completion Detection: Automatically complete your queries.

  • Auto-Reconnect: Always stay connected to the web.

  • Tab Protection: Safeguard your open tabs from unwanted closures.

  • Enhanced Tool Set: Utilize an improved version with seven tools, including comet_tabs for better organization.

📋 Requirements

To run Perplexity-Comet-MCP, you need:

  • Operating System:

    • Windows 10 or later

    • macOS Big Sur or later

    • Windows Subsystem for Linux (WSL) installed on Windows

  • Hardware:

    • At least 4 GB of RAM

    • 1 GB of available disk space

📥 Download & Install

To get started, you need to download the application. Visit the Releases page to download the version that suits your operating system.

Download Release

Here are the steps to install the application:

  1. Click on the Releases link above.

  2. Find the latest version of Perplexity-Comet-MCP.

  3. Download the installer for your operating system (look for .exe for Windows, .dmg for macOS, or specific files for WSL).

  4. Once downloaded, locate the file in your downloads folder.

  5. Double-click the installer file and follow the on-screen instructions to complete the installation.

🌟 Using Perplexity-Comet-MCP

Once installed, open the application. You'll see a simple interface designed for ease of use.

  1. Set Up Your Preferences: Before you start browsing, adjust the settings according to your needs.

  2. Start Browsing: Use the input box to type your questions or topics of interest. The software will autonomously gather information for you.

  3. Manage Tabs: Open multiple queries in different tabs. Switch between them easily to review the information.

  4. Utilize Tools: Make use of the offered tools for smart completion and organization.

📊 Additional Features

  • Overview Display: View important data and statistics related to your queries.

  • History Management: Access previously searched topics and their results.

  • Bookmarking: Save important tabs for easy access later.

📞 Get Help

If you encounter any issues, please check the FAQ section on the Releases page or reach out through the contact section. We're here to assist you.

🔗 Explore More

You can learn more about the features, updates, and community feedback on our GitHub repository:

GitHub Repository

Feel free to explore the topics related to this project, such as ai-agent, anthropic, and browser-automation, to broaden your understanding and capability.

Download Now

Available Tools

8 tools
comet_askA

Send a prompt to Comet/Perplexity and wait for the complete response (blocking). Ideal for tasks requiring real browser interaction (login walls, dynamic content, filling forms) or deep research with agentic browsing.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYesQuestion or task for Comet - focus on goals and context
contextNoOptional context to include (e.g., file contents, codebase info, marketing guidelines). This will be prefixed to the prompt to give Comet full context.
newChatNoStart a fresh conversation (default: false)
timeoutNoMax wait time in ms (default: 120000 = 2min)

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description mentions 'blocking' and 'wait for complete response' which indicates synchronous behavior. However, it does not disclose potential issues like rate limits, authentication requirements, or side effects on sessions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no redundant information, front-loaded with the core action and use cases.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, yet description does not hint at the response format. With siblings like comet_poll and comet_screenshot, some mention of integration or alternatives would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 100% description coverage; the description adds little beyond the schema, with only a vague recommendation to 'focus on goals and context.' It does not clarify parameter interactions or constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the action ('Send a prompt and wait for complete response'), identifies the resource ('Comet/Perplexity'), and specifies blocking behavior, which distinguishes it from non-blocking siblings like comet_poll.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description explicitly advises when to use this tool: 'tasks requiring real browser interaction (login walls, dynamic content, filling forms) or deep research with agentic browsing.' It provides clear context but could explicitly mention cases where it is not suitable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

comet_connectA

Connect to Comet browser (auto-starts if needed)

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses that the tool may auto-start the browser, a key behavioral trait. However, it does not mention side effects, permissions, or confirm whether it blocks or returns a status.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no extraneous words. Every part adds value, achieving maximum conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given zero parameters and no output schema, the description is minimally sufficient but lacks details on return behavior or blocking nature. It could be more informative without being verbose.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters, so no parameter description is needed. According to guidelines, 0 parameters yields a baseline of 4, meriting credit for having no missing param info.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Connect' and the resource 'Comet browser', with added context 'auto-starts if needed'. This distinguishes it from sibling tools like comet_ask, comet_stop, etc., which are clearly different actions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this tool is used to establish a connection or start the browser, but provides no explicit guidance on when to use it versus alternatives, nor any conditions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

comet_modeA

Switch Perplexity search mode. Modes: 'search' (basic), 'research' (deep research), 'labs' (analytics/visualization), 'learn' (educational). Call without mode to see current mode.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoMode to switch to (optional - omit to see current mode)

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries the full burden. It discloses that calling without mode retrieves the current state (read behavior) and calling with mode switches it (write behavior). However, it does not mention any side effects, prerequisites, or what happens on failure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise, using three short sentences. It front-loads the action and lists modes efficiently, with no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, but the description lacks details about return values (e.g., confirmation or error messages). It implies a read behavior without mode but does not specify output format. Given the simplicity, it is somewhat adequate but has gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with an enum and description. The description adds value by explaining each mode's purpose in parentheses, which is more informative than the enum labels alone. This complements the schema effectively.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Switch' and the resource 'Perplexity search mode', listing all modes with brief explanations. It distinguishes from sibling tools (e.g., comet_ask, comet_connect) by focusing solely on mode management.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly instructs when to call without a mode to see the current mode, providing clear usage context. However, it does not offer guidance on when to use specific modes or alternatives among the modes themselves.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

comet_pollA

Check agent status and progress. Call repeatedly to monitor agentic tasks.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavior. It implies a read-only, safe polling operation by saying 'check' and 'monitor', but does not mention what happens if the agent is idle or fails, nor any rate limits. Adequate but minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no wasted words. Front-loaded with purpose, then usage hint. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is mostly complete for a simple no-param polling tool: what it does and how to use it. It lacks detail on return format, but given no output schema, the agent can infer a status summary. Slight gap in describing the response nature.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters (schema coverage 100% trivially), so the baseline is 4. The description adds meaning about repeated calls, which is helpful for an empty-schema tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it checks agent status and progress, with the verb 'check' and resource 'agent status/progress'. It distinguishes from siblings like comet_ask (single query) and comet_stop (stop) by emphasizing repeated calling for monitoring.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Call repeatedly to monitor agentic tasks', giving clear when-to-use context for polling. It does not explicitly exclude alternatives, but the purpose is well-defined given sibling names.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

comet_screenshotB

Capture a screenshot of current page

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are given, and the description does not disclose any behavioral traits like required permissions, side effects (e.g., page scrolling), or output format.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that directly states the tool's purpose, with no unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema, the description should explain what the tool returns (e.g., image data or a file path), but it does not, leaving the agent uninformed about the output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With zero parameters and 100% schema coverage, the description meets the baseline of 4, as there is no additional parameter information needed beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'Capture a screenshot' and the resource 'current page', distinguishing it from sibling tools like comet_ask, comet_tabs, etc.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, such as comet_tabs for navigation or comet_upload for file operations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

comet_stopA

Stop the current agent task if it's going off track

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Describes the core behavior (stop a task), but lacks detail on side effects, reversibility, or post-stop state. Without annotations, the description carries the full burden and is minimally adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with no extraneous words, fully front-loaded with action and condition. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple stop tool with no params or output schema, the description is sufficient to understand purpose and usage condition. Minor improvement could include mention of irreversibility or effect on subsequent tasks.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has no parameters, so the description cannot add meaning beyond the schema. Baseline score of 4 applies per guidelines.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the action ('stop') and resource ('current agent task'), with a specific condition ('if it's going off track'). Distinguishes from sibling tools like comet_ask or comet_connect by its specific verb and context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides a clear condition for use ('if it's going off track'), implying when to invoke. However, no explicit mention of when not to use or alternatives, which would fully round out the guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

comet_tabsA

View and manage browser tabs. Shows all open tabs with their purpose, domain, and status. Helps coordinate multi-tab workflows without creating duplicate tabs.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionNoAction to perform: 'list' (default) shows all tabs, 'switch' activates a tab, 'close' closes a tab
domainNoFor switch/close: domain to match (e.g., 'github.com')
tabIdNoFor switch/close: specific tab ID

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavior. It states 'Shows all open tabs' and mentions actions, but does not describe side effects of switch/close, error conditions, or whether the tool modifies state. The description is too brief for a tool that performs mutable operations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences, front-loaded with the main purpose ('View and manage browser tabs'). Every sentence adds value, and there is no redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (3 params, no required, no output schema), the description adequately covers purpose and available actions. It implies return format ('shows all open tabs'). A more complete description might explicitly state what 'list' returns, but it is sufficient for its complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and each parameter has a description. The description clarifies the default action ('list' as default) and explains the actions. However, it adds minimal beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'View and manage browser tabs.' It specifies the resource (browser tabs) and actions (view, manage). It distinguishes itself from sibling tools (e.g., comet_screenshot, comet_ask) which are unrelated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for multi-tab workflows ('Helps coordinate...without creating duplicate tabs'), but does not provide explicit when-to-use or when-not-to-use guidance. No alternatives are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

comet_uploadA

Upload a file to a file input on the current page. Use this to attach images, documents, or other files to forms, posts, or upload dialogs. The file must exist on the local filesystem.

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesAbsolute path to the file to upload (e.g., '/home/user/image.png' or 'C:\Users\user\image.png')
selectorNoOptional CSS selector for the file input element. If not provided, auto-detects the first file input on the page.
checkOnlyNoIf true, only checks if file inputs exist on the page without uploading

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses that the file must exist locally but doesn't mention behavior on missing file, size limits, or whether upload is synchronous. Minimal insight into side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with purpose, no redundant information. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple upload tool but missing behavioral details like error handling, return value, or whether upload completes before returning. No output schema, so description should cover these.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear descriptions for each parameter. Description adds one extra constraint ('file must exist on local filesystem') but doesn't significantly enhance understanding beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Upload a file to a file input on the current page' with specific verb and resource. It distinguishes from siblings like comet_screenshot or comet_ask, as it's the only file upload tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides examples of when to use (attach images, documents, etc.) and implies context (file input on page). No explicit alternatives mentioned, but sibling naming makes it clear this is the only upload tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 8 tool updatesv2.6.2
    • First observedcomet_ask
    • First observedcomet_connect
    • First observedcomet_mode
    • First observedcomet_poll
    • First observedcomet_screenshot
    • First observedcomet_stop
    • First observedcomet_tabs
    • First observedcomet_upload

TDQS

A4/5.0

Scored across 8 tools

Disambiguation5/5

Each tool has a clearly distinct purpose with no ambiguity. For example, comet_ask is for sending prompts, comet_connect handles browser connection, comet_mode switches search modes, and comet_upload manages file uploads. The descriptions clearly differentiate their functions, preventing misselection.

Naming Consistency5/5

All tool names follow a consistent 'comet_' prefix with descriptive suffixes (e.g., ask, connect, mode, poll). This verb_noun or action-based pattern is uniform across all eight tools, making them predictable and easy to understand.

Tool Count5/5

With 8 tools, the count is well-scoped for a browser interaction and research assistant server. Each tool serves a specific role in managing browser sessions, handling tasks, and interacting with content, with no redundancy or missing core functions.

Completeness5/5

The tool set provides complete coverage for browser-based research and interaction tasks. It includes connection management (comet_connect), task execution (comet_ask, comet_poll, comet_stop), mode switching (comet_mode), tab management (comet_tabs), and file handling (comet_upload, comet_screenshot), leaving no obvious gaps.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Related MCP Connectors