Skip to main content
Glama

DuckDuckGo MCP Server

by elliot-evno

ddg-mcp123

An awesome MCP generated by AI

Features

  • 🚀 Built with FastMCP framework
  • 🔄 Supports both stdio and HTTP transports
  • 🐳 Docker ready
  • 📝 Type hints throughout
  • 🧪 Test suite included
  • ⚙️ GitHub Actions CI/CD

Installation

  1. Clone this repository
  2. Create a virtual environment:
    python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
  3. Install dependencies:
    pip install -r requirements.txt pip install -e .

Usage

Stdio Transport (for Claude Desktop, etc.)

ddg_mcp123-mcp --transport stdio

HTTP Transport (for web integration)

ddg_mcp123-mcp --transport streamable-http --port 8080

Docker

# Build image docker build -t ddg-mcp123 . # Run container docker run -p 8080:8080 ddg-mcp123

Available Tools

  • example_tool: Echo a message back
  • get_server_info: Get information about this MCP server

Development

Running Tests

pip install pytest pytest-asyncio pytest tests/

Adding New Tools

  1. Create a new function in ddg_mcp123/app.py
  2. Decorate it with @mcp.tool()
  3. Add proper type hints and docstring
  4. The tool will automatically be available to MCP clients

Example:

@mcp.tool() async def my_new_tool(input_text: str) -> Dict[str, Any]: """ Description of what this tool does. Args: input_text: Description of the parameter Returns: Dictionary with the result """ return {"result": f"Processed: {input_text}"}

Configuration

Deployment

Docker Deployment

This project includes a Dockerfile for easy deployment:

docker build -t ddg-mcp123 . docker run -p 8080:8080 ddg-mcp123

CI/CD

This project includes GitHub Actions workflows for:

  • Running tests on multiple Python versions
  • Building and testing Docker images
  • Automated deployment (when configured)

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests for new functionality
  5. Run the test suite
  6. Create a pull request

License

MIT License

-
security - not tested
F
license - not found
-
quality - not tested

A basic MCP server built with FastMCP framework that provides example tools for echoing messages and retrieving server information. Supports both stdio and HTTP transports with Docker deployment capabilities.

  1. Features
    1. Installation
      1. Usage
        1. Stdio Transport (for Claude Desktop, etc.)
        2. HTTP Transport (for web integration)
        3. Docker
      2. Available Tools
        1. Development
          1. Running Tests
          2. Adding New Tools
        2. Configuration
          1. Deployment
            1. Docker Deployment
            2. CI/CD
          2. Contributing
            1. License

              MCP directory API

              We provide all the information about MCP servers via our MCP API.

              curl -X GET 'https://glama.ai/api/mcp/v1/servers/elliot-evno/ddg-mcp123'

              If you have feedback or need assistance with the MCP directory API, please join our Discord server