https://github.com/doriandarko/claude-search-mcp
A MCP server that provides web search capabilities using the Claude API.
https://github.com/doriandarko/claude-search-mcp
Last synced: about 2 months ago
JSON representation
A MCP server that provides web search capabilities using the Claude API.
- Host: GitHub
- URL: https://github.com/doriandarko/claude-search-mcp
- Owner: Doriandarko
- Created: 2025-05-10T02:45:37.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-05-10T02:58:30.000Z (5 months ago)
- Last Synced: 2025-07-31T18:00:54.069Z (3 months ago)
- Language: JavaScript
- Size: 6.84 KB
- Stars: 45
- Watchers: 2
- Forks: 10
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Claude Web Search MCP Server
This MCP (Model Context Protocol) server provides web search capabilities using the Claude API. It allows LLMs to access up-to-date information from the web through a standardized interface.
## Features
- Web search tool using Claude's web search API
- Support for domain filtering (allowed and blocked domains)
- Configurable maximum results per search
- Automatic configuration from Claude Desktop config file## Prerequisites
- Node.js 18 or higher
- An Anthropic API key with web search enabled
- Claude Desktop app for testing## Installation & Setup
1. **Clone the repository:**
```bash
git clone https://github.com/Doriandarko/claude-search-mcp.git
cd claude-search-mcp
```2. **Install dependencies:**
```bash
npm install
```3. **Build the server:**
```bash
npm run build
```
This compiles the TypeScript code and makes the server executable.4. **Link the server for global access:**
```bash
npm link
```
This makes the `mcp-server-claude-search` command available system-wide, allowing the Claude Desktop app to find it.## Running the Server with Claude Desktop App
Once the server is installed and linked, the Claude Desktop app can manage it automatically if configured correctly.
1. **Configure Claude Desktop App:**
Open your Claude Desktop app's MCP server configuration file (usually `claude_desktop_config.json`). Add or update the entry for this server:```json
{
"mcpServers": {
// ... other servers ...
"claude-search": {
"command": "mcp-server-claude-search",
"env": {
"ANTHROPIC_API_KEY": "YOUR_ANTHROPIC_API_KEY_HERE"
}
}
// ... other servers ...
}
}
```
Replace `"YOUR_ANTHROPIC_API_KEY_HERE"` with your actual Anthropic API key. The server will also attempt to read this key from `~/code/claude-search-mcp/claude_desktop_config.json` if the `env` variable is not set here, but it's good practice to define it per-server in the main config.2. **Launch Claude Desktop App:**
Start (or restart) your Claude Desktop application. It should now be able to find and launch the `mcp-server-claude-search` when needed.3. **Use Web Search:**
You can now use web search capabilities in your conversations with Claude.## Manual Server Execution (for testing/development)
If you want to run the server manually for testing or development purposes (outside of the Claude Desktop app management):
- **Using the globally linked command:**
```bash
mcp-server-claude-search
```
- **Directly with tsx (for development with auto-restart):**
```bash
npm run dev
```
- **Running the compiled code directly:**
```bash
npm start
```## Web Search Tool Parameters
The web search tool supports the following parameters when called by an LLM:
- `query` (required): The search query string.
- `maxResults` (optional): Maximum number of search results to return (default: 5).
- `allowedDomains` (optional): Array of domains to include in search results (e.g., `["example.com", "wikipedia.org"]`).
- `blockedDomains` (optional): Array of domains to exclude from search results.## License
MIT