Author avatar

by SeolYoungKim

Client

Tags

4.8 (120)

MCP 만들면서 원리 파헤쳐보기

img.png

MCP Client

  • LLM과 통신하고, MCP server와 통신함
  • ex: 클로드 데스크탑
  • 아마 직접 구현할 일은 드물듯 하다. 회사에서 어떠한 AI 서비스를 제공한다고 한다면 만들 일이 있을지도?

MCP Server

  • 제공할 서비스를 구현
  • 아마 개발자들은 MCP Client 보다는 MCP Server를 많이 구현하지 않을까?
  • JDK17 까지만 지원되는듯? 21했다가 에러남
    • 실행은 에러가 없지만 클로드에서 MCP server 사용하려니까 에러나면서 실행안됨
    • 뭐 곧 지원되겠지

대충 실행 해보자

클로드 데스크탑의 claude_desktop_config.json파일에 아래의 내용 작성 img_3.png

  • command에는 명령어를 적는다. 도커파일에 적는것과 비슷한 느낌. 나는 jar 파일 실행해야 해서 java를 적음
  • argsjava명령어에 넣을 인수들을 넣었음. -jar옵션과 함께 실행할 jar파일의 절대경로를 넣어주었음

img_2.png

  • 잘 들어가면 클로드 데스크탑을 실행할 때 위와 같이 running

img_1.png

  • 나는 @Tool의 description에 Get the current weather information by city name.을 넣었음. 이를 미루어 보아 클로드에게 {도시이름}의 날씨 알려줘라고 명령하면 나의 MCP server를 활용할 것이라고 생각했고, 수원 날씨 알려줘라고 했더니 내가 작성한 스크립트대로 응답하는 것을 확인했음!

MCP server로 할 수 있는게 정말 많아보인다. 뭘 해볼지 생각해보자!

공부하는 내용을 정리하고 있는 곳

https://kimsy8979.notion.site/AI-MCP-1c5cbb7e0307805aba8bc8fc4d9a470f?pvs=4

Related Services

playwright-mcp

Server

## Playwright MCP A Model Context Protocol (MCP) server that provides browser automation capabilities using [Playwright](https://playwright.dev). This server enables LLMs to interact with web pages through structured accessibility snapshots, bypassing the need for screenshots or visually-tuned models. ### Key Features - **Fast and lightweight**: Uses Playwright's accessibility tree, not pixel-based input. - **LLM-friendly**: No vision models needed, operates purely on structured data. - **Deterministic tool application**: Avoids ambiguity common with screenshot-based approaches. ### Use Cases - Web navigation and form-filling - Data extraction from structured content - Automated testing driven by LLMs - General-purpose browser interaction for agents ### Example config ```js { "mcpServers": { "playwright": { "command": "npx", "args": [ "@playwright/mcp@latest" ] } } } ``` #### Installation in VS Code Install the Playwright MCP server in VS Code using one of these buttons: <!-- // Generate using?: const config = JSON.stringify({ name: 'playwright', command: 'npx', args: ["-y", "@playwright/mcp@latest"] }); const urlForWebsites = `vscode:mcp/install?${encodeURIComponent(config)}`; // Github markdown does not allow linking to `vscode:` directly, so you can use our redirect: const urlForGithub = `https://insiders.vscode.dev/redirect?url=${encodeURIComponent(urlForWebsites)}`; --> [<img alt="Install in VS Code Insiders" src="https://img.shields.io/badge/VS_Code_Insiders-VS_Code_Insiders?style=flat-square&label=Install%20Server&color=24bfa5">](https://insiders.vscode.dev/redirect?url=vscode-insiders%3Amcp%2Finstall%3F%257B%2522name%2522%253A%2522playwright%2522%252C%2522command%2522%253A%2522npx%2522%252C%2522args%2522%253A%255B%2522-y%2522%252C%2522%2540playwright%252Fmcp%2540latest%2522%255D%257D) Alternatively, you can install the Playwright MCP server using the VS Code CLI: ```bash # For VS Code code --add-mcp '{"name":"playwright","command":"npx","args":["@playwright/mcp@latest"]}' ``` ```bash # For VS Code Insiders code-insiders --add-mcp '{"name":"playwright","command":"npx","args":["@playwright/mcp@latest"]}' ``` After installation, the Playwright MCP server will be available for use with your GitHub Copilot agent in VS Code. ### CLI Options The Playwright MCP server supports the following command-line options: - `--browser <browser>`: Browser or chrome channel to use. Possible values: - `chrome`, `firefox`, `webkit`, `msedge` - Chrome channels: `chrome-beta`, `chrome-canary`, `chrome-dev` - Edge channels: `msedge-beta`, `msedge-canary`, `msedge-dev` - Default: `chrome` - `--cdp-endpoint <endpoint>`: CDP endpoint to connect to - `--executable-path <path>`: Path to the browser executable - `--headless`: Run browser in headless mode (headed by default) - `--port <port>`: Port to listen on for SSE transport - `--user-data-dir <path>`: Path to the user data directory - `--vision`: Run server that uses screenshots (Aria snapshots are used by default) ### User data directory Playwright MCP will launch the browser with the new profile, located at ``` - `%USERPROFILE%\AppData\Local\ms-playwright\mcp-chrome-profile` on Windows - `~/Library/Caches/ms-playwright/mcp-chrome-profile` on macOS - `~/.cache/ms-playwright/mcp-chrome-profile` on Linux ``` All the logged in information will be stored in that profile, you can delete it between sessions if you'd like to clear the offline state. ### Running headless browser (Browser without GUI). This mode is useful for background or batch operations. ```js { "mcpServers": { "playwright": { "command": "npx", "args": [ "@playwright/mcp@latest", "--headless" ] } } } ``` ### Running headed browser on Linux w/o DISPLAY When running headed browser on system w/o display or from worker processes of the IDEs, run the MCP server from environment with the DISPLAY and pass the `--port` flag to enable SSE transport. ```bash npx @playwright/mcp@latest --port 8931 ``` And then in MCP client config, set the `url` to the SSE endpoint: ```js { "mcpServers": { "playwright": { "url": "http://localhost:8931/sse" } } } ``` ### Tool Modes The tools are available in two modes: 1. **Snapshot Mode** (default): Uses accessibility snapshots for better performance and reliability 2. **Vision Mode**: Uses screenshots for visual-based interactions To use Vision Mode, add the `--vision` flag when starting the server: ```js { "mcpServers": { "playwright": { "command": "npx", "args": [ "@playwright/mcp@latest", "--vision" ] } } } ``` Vision Mode works best with the computer use models that are able to interact with elements using X Y coordinate space, based on the provided screenshot. ### Programmatic usage with custom transports ```js import { createServer } from '@playwright/mcp'; // ... const server = createServer({ launchOptions: { headless: true } }); transport = new SSEServerTransport("/messages", res); server.connect(transport); ``` ### Snapshot Mode The Playwright MCP provides a set of tools for browser automation. Here are all available tools: - **browser_navigate** - Description: Navigate to a URL - Parameters: - `url` (string): The URL to navigate to - **browser_go_back** - Description: Go back to the previous page - Parameters: None - **browser_go_forward** - Description: Go forward to the next page - Parameters: None - **browser_click** - Description: Perform click on a web page - Parameters: - `element` (string): Human-readable element description used to obtain permission to interact with the element - `ref` (string): Exact target element reference from the page snapshot - **browser_hover** - Description: Hover over element on page - Parameters: - `element` (string): Human-readable element description used to obtain permission to interact with the element - `ref` (string): Exact target element reference from the page snapshot - **browser_drag** - Description: Perform drag and drop between two elements - Parameters: - `startElement` (string): Human-readable source element description used to obtain permission to interact with the element - `startRef` (string): Exact source element reference from the page snapshot - `endElement` (string): Human-readable target element description used to obtain permission to interact with the element - `endRef` (string): Exact target element reference from the page snapshot - **browser_type** - Description: Type text into editable element - Parameters: - `element` (string): Human-readable element description used to obtain permission to interact with the element - `ref` (string): Exact target element reference from the page snapshot - `text` (string): Text to type into the element - `submit` (boolean): Whether to submit entered text (press Enter after) - **browser_select_option** - Description: Select option in a dropdown - Parameters: - `element` (string): Human-readable element description used to obtain permission to interact with the element - `ref` (string): Exact target element reference from the page snapshot - `values` (array): Array of values to select in the dropdown. - **browser_choose_file** - Description: Choose one or multiple files to upload - Parameters: - `paths` (array): The absolute paths to the files to upload. Can be a single file or multiple files. - **browser_press_key** - Description: Press a key on the keyboard - Parameters: - `key` (string): Name of the key to press or a character to generate, such as `ArrowLeft` or `a` - **browser_snapshot** - Description: Capture accessibility snapshot of the current page (better than screenshot) - Parameters: None - **browser_save_as_pdf** - Description: Save page as PDF - Parameters: None - **browser_take_screenshot** - Description: Capture screenshot of the page - Parameters: - `raw` (string): Optionally returns lossless PNG screenshot. JPEG by default. - **browser_wait** - Description: Wait for a specified time in seconds - Parameters: - `time` (number): The time to wait in seconds (capped at 10 seconds) - **browser_close** - Description: Close the page - Parameters: None ### Vision Mode Vision Mode provides tools for visual-based interactions using screenshots. Here are all available tools: - **browser_navigate** - Description: Navigate to a URL - Parameters: - `url` (string): The URL to navigate to - **browser_go_back** - Description: Go back to the previous page - Parameters: None - **browser_go_forward** - Description: Go forward to the next page - Parameters: None - **browser_screenshot** - Description: Capture screenshot of the current page - Parameters: None - **browser_move_mouse** - Description: Move mouse to specified coordinates - Parameters: - `x` (number): X coordinate - `y` (number): Y coordinate - **browser_click** - Description: Click at specified coordinates - Parameters: - `x` (number): X coordinate to click at - `y` (number): Y coordinate to click at - **browser_drag** - Description: Perform drag and drop operation - Parameters: - `startX` (number): Start X coordinate - `startY` (number): Start Y coordinate - `endX` (number): End X coordinate - `endY` (number): End Y coordinate - **browser_type** - Description: Type text at specified coordinates - Parameters: - `text` (string): Text to type - `submit` (boolean): Whether to submit entered text (press Enter after) - **browser_press_key** - Description: Press a key on the keyboard - Parameters: - `key` (string): Name of the key to press or a character to generate, such as `ArrowLeft` or `a` - **browser_choose_file** - Description: Choose one or multiple files to upload - Parameters: - `paths` (array): The absolute paths to the files to upload. Can be a single file or multiple files. - **browser_save_as_pdf** - Description: Save page as PDF - Parameters: None - **browser_wait** - Description: Wait for a specified time in seconds - Parameters: - `time` (number): The time to wait in seconds (capped at 10 seconds) - **browser_close** - Description: Close the page - Parameters: None

4.8 (120)
View Details →

blender-mcp

Server

# BlenderMCP - Blender Model Context Protocol Integration BlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation. [Full tutorial](https://www.youtube.com/watch?v=lCyQ717DuzQ) ### Join the Community Give feedback, get inspired, and build on top of the MCP: [Discord](https://discord.gg/z5apgR8TFU) ### Supporters **Top supporters:** [CodeRabbit](https://www.coderabbit.ai/) **All supporters:** [Support this project](https://github.com/sponsors/ahujasid) ## Release notes (1.1.0) - Added support for Poly Haven assets through their API - Added support to prompt 3D models using Hyper3D Rodin - For newcomers, you can go straight to Installation. For existing users, see the points below - Download the latest addon.py file and replace the older one, then add it to Blender - Delete the MCP server from Claude and add it back again, and you should be good to go! ## Features - **Two-way communication**: Connect Claude AI to Blender through a socket-based server - **Object manipulation**: Create, modify, and delete 3D objects in Blender - **Material control**: Apply and modify materials and colors - **Scene inspection**: Get detailed information about the current Blender scene - **Code execution**: Run arbitrary Python code in Blender from Claude ## Components The system consists of two main components: 1. **Blender Addon (`addon.py`)**: A Blender addon that creates a socket server within Blender to receive and execute commands 2. **MCP Server (`src/blender_mcp/server.py`)**: A Python server that implements the Model Context Protocol and connects to the Blender addon ## Installation ### Prerequisites - Blender 3.0 or newer - Python 3.10 or newer - uv package manager: **If you're on Mac, please install uv as** ```bash brew install uv ``` **On Windows** ```bash powershell -c "irm https://astral.sh/uv/install.ps1 | iex" ``` and then ```bash set Path=C:\Users\nntra\.local\bin;%Path% ``` Otherwise installation instructions are on their website: [Install uv](https://docs.astral.sh/uv/getting-started/installation/) **⚠️ Do not proceed before installing UV** ### Claude for Desktop Integration [Watch the setup instruction video](https://www.youtube.com/watch?v=neoK_WMq92g) (Assuming you have already installed uv) Go to Claude > Settings > Developer > Edit Config > claude_desktop_config.json to include the following: ```json { "mcpServers": { "blender": { "command": "uvx", "args": [ "blender-mcp" ] } } } ``` ### Cursor integration Run blender-mcp without installing it permanently through uvx. Go to Cursor Settings > MCP and paste this as a command. ```bash uvx blender-mcp ``` For Windows users, go to Settings > MCP > Add Server, add a new server with the following settings: ```json { "mcpServers": { "blender": { "command": "cmd", "args": [ "/c", "uvx", "blender-mcp" ] } } } ``` [Cursor setup video](https://www.youtube.com/watch?v=wgWsJshecac) **⚠️ Only run one instance of the MCP server (either on Cursor or Claude Desktop), not both** ### Installing the Blender Addon 1. Download the `addon.py` file from this repo 1. Open Blender 2. Go to Edit > Preferences > Add-ons 3. Click "Install..." and select the `addon.py` file 4. Enable the addon by checking the box next to "Interface: Blender MCP" ## Usage ### Starting the Connection ![BlenderMCP in the sidebar](assets/addon-instructions.png) 1. In Blender, go to the 3D View sidebar (press N if not visible) 2. Find the "BlenderMCP" tab 3. Turn on the Poly Haven checkbox if you want assets from their API (optional) 4. Click "Connect to Claude" 5. Make sure the MCP server is running in your terminal ### Using with Claude Once the config file has been set on Claude, and the addon is running on Blender, you will see a hammer icon with tools for the Blender MCP. ![BlenderMCP in the sidebar](assets/hammer-icon.png) #### Capabilities - Get scene and object information - Create, delete and modify shapes - Apply or create materials for objects - Execute any Python code in Blender - Download the right models, assets and HDRIs through [Poly Haven](https://polyhaven.com/) - AI generated 3D models through [Hyper3D Rodin](https://hyper3d.ai/) ### Example Commands Here are some examples of what you can ask Claude to do: - "Create a low poly scene in a dungeon, with a dragon guarding a pot of gold" [Demo](https://www.youtube.com/watch?v=DqgKuLYUv00) - "Create a beach vibe using HDRIs, textures, and models like rocks and vegetation from Poly Haven" [Demo](https://www.youtube.com/watch?v=I29rn92gkC4) - Give a reference image, and create a Blender scene out of it [Demo](https://www.youtube.com/watch?v=FDRb03XPiRo) - "Generate a 3D model of a garden gnome through Hyper3D" - "Get information about the current scene, and make a threejs sketch from it" [Demo](https://www.youtube.com/watch?v=jxbNI5L7AH8) - "Make this car red and metallic" - "Create a sphere and place it above the cube" - "Make the lighting like a studio" - "Point the camera at the scene, and make it isometric" ## Hyper3D integration Hyper3D's free trial key allows you to generate a limited number of models per day. If the daily limit is reached, you can wait for the next day's reset or obtain your own key from hyper3d.ai and fal.ai. ## Troubleshooting - **Connection issues**: Make sure the Blender addon server is running, and the MCP server is configured on Claude, DO NOT run the uvx command in the terminal. Sometimes, the first command won't go through but after that it starts working. - **Timeout errors**: Try simplifying your requests or breaking them into smaller steps - **Poly Haven integration**: Claude is sometimes erratic with its behaviour - **Have you tried turning it off and on again?**: If you're still having connection errors, try restarting both Claude and the Blender server ## Technical Details ### Communication Protocol The system uses a simple JSON-based protocol over TCP sockets: - **Commands** are sent as JSON objects with a `type` and optional `params` - **Responses** are JSON objects with a `status` and `result` or `message` ## Limitations & Security Considerations - The `execute_blender_code` tool allows running arbitrary Python code in Blender, which can be powerful but potentially dangerous. Use with caution in production environments. ALWAYS save your work before using it. - Poly Haven requires downloading models, textures, and HDRI images. If you do not want to use it, please turn it off in the checkbox in Blender. - Complex operations might need to be broken down into smaller steps ## Contributing Contributions are welcome! Please feel free to submit a Pull Request. ## Disclaimer This is a third-party integration and not made by Blender. Made by [Siddharth](https://x.com/sidahuj)

4.8 (120)
View Details →

tavily-mcp

Server

# Tavily MCP Server 🚀 ![GitHub Repo stars](https://img.shields.io/github/stars/tavily-ai/tavily-mcp?style=social) ![npm](https://img.shields.io/npm/dt/tavily-mcp) ![smithery badge](https://smithery.ai/badge/@tavily-ai/tavily-mcp) > 🔌 **Compatible with [Cline](https://github.com/cline/cline), [Cursor](https://cursor.sh), [Claude Desktop](https://claude.ai/desktop), and any other MCP Clients!** > > Tavily MCP is also compatible with any MCP client > > 📚 [tutorial](https://medium.com/@dustin_36183/building-a-knowledge-graph-assistant-combining-tavily-and-neo4j-mcp-servers-with-claude-db92de075df9) on combining Tavily MCP with Neo4j MCP server! > > 📚 [tutorial](https://medium.com/@dustin_36183/connect-your-coding-assistant-to-the-web-integrating-tavily-mcp-with-cline-in-vs-code-5f923a4983d1) Integrating Tavily MCP with Cline in VS Code ( Demo + Example Use-Cases) > ![Tavily MCP Demo](./assets/mcp-demo.gif) The Model Context Protocol (MCP) is an open standard that enables AI systems to interact seamlessly with various data sources and tools, facilitating secure, two-way connections. Developed by Anthropic, the Model Context Protocol (MCP) enables AI assistants like Claude to seamlessly integrate with Tavily's advanced search and data extraction capabilities. This integration provides AI models with real-time access to web information, complete with sophisticated filtering options and domain-specific search features. The Tavily MCP server provides: - Seamless interaction with the tavily-search and tavily-extract tools - Real-time web search capabilities through the tavily-search tool - Intelligent data extraction from web pages via the tavily-extract tool ## Prerequisites 🔧 Before you begin, ensure you have: - [Tavily API key](https://app.tavily.com/home) - If you don't have a Tavily API key, you can sign up for a free account [here](https://app.tavily.com/home) - [Claude Desktop](https://claude.ai/download) or [Cursor](https://cursor.sh) - [Node.js](https://nodejs.org/) (v20 or higher) - You can verify your Node.js installation by running: - `node --version` - [Git](https://git-scm.com/downloads) installed (only needed if using Git installation method) - On macOS: `brew install git` - On Linux: - Debian/Ubuntu: `sudo apt install git` - RedHat/CentOS: `sudo yum install git` - On Windows: Download [Git for Windows](https://git-scm.com/download/win) ## Tavily MCP server installation ⚡ ### Running with NPX ```bash npx -y [email protected] ``` ### Installing via Smithery To install Tavily MCP Server for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@tavily-ai/tavily-mcp): ```bash npx -y @smithery/cli install @tavily-ai/tavily-mcp --client claude ``` Although you can launch a server on its own, it's not particularly helpful in isolation. Instead, you should integrate it into an MCP client. Below is an example of how to configure the Claude Desktop app to work with the tavily-mcp server. ## Configuring MCP Clients ⚙️ This repository will explain how to configure both [Cursor](https://cursor.sh) and [Claude Desktop](https://claude.ai/desktop) to work with the tavily-mcp server. ### Configuring Cline 🤖 The easiest way to set up the Tavily MCP server in Cline is through the marketplace with a single click: 1. Open Cline in VS Code 2. Click on the Cline icon in the sidebar 3. Navigate to the "MCP Servers" tab ( 4 squares ) 4. Search "Tavily" and click "install" 5. When prompted, enter your Tavily API key Alternatively, you can manually set up the Tavily MCP server in Cline: 1. Open the Cline MCP settings file: ### For macOS: ```bash # Using Visual Studio Code code ~/Library/Application\ Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json # Or using TextEdit open -e ~/Library/Application\ Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json ``` ### For Windows: ```bash code %APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json ``` 2. Add the Tavily server configuration to the file: Replace `your-api-key-here` with your actual [Tavily API key](https://tavily.com/api-keys). ```json { "mcpServers": { "tavily-mcp": { "command": "npx", "args": ["-y", "[email protected]"], "env": { "TAVILY_API_KEY": "your-api-key-here" }, "disabled": false, "autoApprove": [] } } } ``` 3. Save the file and restart Cline if it's already running. 4. When using Cline, you'll now have access to the Tavily MCP tools. You can ask Cline to use the tavily-search and tavily-extract tools directly in your conversations. ### Configuring Cursor 🖥️ > **Note**: Requires Cursor version 0.45.6 or higher To set up the Tavily MCP server in Cursor: 1. Open Cursor Settings 2. Navigate to Features > MCP Servers 3. Click on the "+ Add New MCP Server" button 4. Fill out the following information: - **Name**: Enter a nickname for the server (e.g., "tavily-mcp") - **Type**: Select "command" as the type - **Command**: Enter the command to run the server: ```bash env TAVILY_API_KEY=your-api-key npx -y [email protected] ``` > **Important**: Replace `your-api-key` with your Tavily API key. You can get one at [app.tavily.com/home](https://app.tavily.com/home) After adding the server, it should appear in the list of MCP servers. You may need to manually press the refresh button in the top right corner of the MCP server to populate the tool list. The Composer Agent will automatically use the Tavily MCP tools when relevant to your queries. It is better to explicitly request to use the tools by describing what you want to do (e.g., "User tavily-search to search the web for the latest news on AI"). On mac press command + L to open the chat, select the composer option at the top of the screen, beside the submit button select agent and submit the query when ready. ![Cursor Interface Example](./assets/cursor-reference.png) ### Configuring the Claude Desktop app 🖥️ ### For macOS: ```bash # Create the config file if it doesn't exist touch "$HOME/Library/Application Support/Claude/claude_desktop_config.json" # Opens the config file in TextEdit open -e "$HOME/Library/Application Support/Claude/claude_desktop_config.json" # Alternative method using Visual Studio Code (requires VS Code to be installed) code "$HOME/Library/Application Support/Claude/claude_desktop_config.json" ``` ### For Windows: ```bash code %APPDATA%\Claude\claude_desktop_config.json ``` ### Add the Tavily server configuration: Replace `your-api-key-here` with your actual [Tavily API key](https://tavily.com/api-keys). ```json { "mcpServers": { "tavily-mcp": { "command": "npx", "args": ["-y", "[email protected]"], "env": { "TAVILY_API_KEY": "your-api-key-here" } } } } ``` ### 2. Git Installation 1. Clone the repository: ```bash git clone https://github.com/tavily-ai/tavily-mcp.git cd tavily-mcp ``` 2. Install dependencies: ```bash npm install ``` 3. Build the project: ```bash npm run build ``` ### Configuring the Claude Desktop app ⚙️ Follow the configuration steps outlined in the [Configuring the Claude Desktop app](#configuring-the-claude-desktop-app-️) section above, using the below JSON configuration. Replace `your-api-key-here` with your actual [Tavily API key](https://tavily.com/api-keys) and `/path/to/tavily-mcp` with the actual path where you cloned the repository on your system. ```json { "mcpServers": { "tavily": { "command": "npx", "args": ["/path/to/tavily-mcp/build/index.js"], "env": { "TAVILY_API_KEY": "your-api-key-here" } } } } ``` ## Usage in Claude Desktop App 🎯 Once the installation is complete, and the Claude desktop app is configured, you must completely close and re-open the Claude desktop app to see the tavily-mcp server. You should see a hammer icon in the bottom left of the app, indicating available MCP tools, you can click on the hammer icon to see more detial on the tavily-search and tavily-extract tools. ![Alt text](./assets/claude-desktop-ref.png) Now claude will have complete access to the tavily-mcp server, including the tavily-search and tavily-extract tools. If you insert the below examples into the Claude desktop app, you should see the tavily-mcp server tools in action. ### Tavily Search Examples 1. **General Web Search**: ``` Can you search for recent developments in quantum computing? ``` 2. **News Search**: ``` Search for news articles about AI startups from the last 7 days. ``` 3. **Domain-Specific Search**: ``` Search for climate change research on nature.com and sciencedirect.com ``` ### Tavily Extract Examples 1. **Extract Article Content**: ``` Extract the main content from this article: https://example.com/article ``` ### ✨ Combine Search and Extract ✨ You can also combine the tavily-search and tavily-extract tools to perform more complex tasks. ``` Search for news articles about AI startups from the last 7 days and extract the main content from each article to generate a detailed report. ``` ## Troubleshooting 🛠️ ### Common Issues 1. **Server Not Found** - Verify the npm installation by running `npm --verison` - Check Claude Desktop configuration syntax by running `code ~/Library/Application\ Support/Claude/claude_desktop_config.json` - Ensure Node.js is properly installed by running `node --version` 2. **NPX related issues** - If you encounter errors related to `npx`, you may need to use the full path to the npx executable instead. - You can find this path by running `which npx` in your terminal, then replace the `"command": "npx"` line with `"command": "/full/path/to/npx"` in your configuration. 3. **API Key Issues** - Confirm your Tavily API key is valid - Check the API key is correctly set in the config - Verify no spaces or quotes around the API key ## Acknowledgments ✨ - [Model Context Protocol](https://modelcontextprotocol.io) for the MCP specification - [Anthropic](https://anthropic.com) for Claude Desktop

4.8 (120)
View Details →