A TypeScript-based MCP server that provides DuckDuckGo web search integration capabilities
1 stars1 watching1 forks
duckduckgo-web-search MCP Server
duckduckgo-web-search
This is a TypeScript-based MCP server that implements a simple notes system. It demonstrates core MCP concepts by providing:
- Resources representing text notes with URIs and metadata
- Tools for creating new notes
- Prompts for generating summaries of notes
Features
Resources
- List and access notes via
note://
URIs - Each note has a title, content and metadata
- Plain text mime type for simple content access
Tools
create_note
- Create new text notes- Takes title and content as required parameters
- Stores note in server state
Prompts
summarize_notes
- Generate a summary of all stored notes- Includes all note contents as embedded resources
- Returns structured prompt for LLM summarization
Development
Install dependencies:
npm install
Build the server:
npm run build
For development with auto-rebuild:
npm run watch
Installation
To use with Claude Desktop, add the server config:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"duckduckgo-web-search": {
"command": "/path/to/duckduckgo-web-search/build/index.js"
}
}
}
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
npm run inspector
The Inspector will provide a URL to access debugging tools in your browser.
Features
search
notes
metadata
summarization
Category
Search