P

fastmcp-todo-server

...
Created 2/24/2025byDanEdens

Categories

mcp-server

Language:

Python

Stars:

3

Forks:

1

FastMCP Todo Server

A FastMCP-based Todo Server for the Swarmonomicon project. This server receives todo requests via FastMCP and stores them in MongoDB for processing by the Swarmonomicon todo worker.

Features

  • FastMCP server for receiving todo requests
  • MongoDB integration for todo storage
  • Compatible with Swarmonomicon todo worker
  • Python-based implementation

Installation

  1. Clone the repository:

    git clone https://github.com/DanEdens/fastmcp-todo-server.git
    cd fastmcp-todo-server
    
  2. Install uv (if not already installed):

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  3. Create and activate a virtual environment with uv:

    uv venv
    source .venv/bin/activate  # On Unix/macOS
    # or
    .venv\Scripts\activate  # On Windows
    
  4. Install dependencies with uv:

    uv pip install -r requirements.txt
    
  5. For development, install additional dependencies:

    uv pip install -r requirements-dev.txt
    
  6. Create a .env file with your configuration:

    MONGODB_URI=mongodb://localhost:27017
    MONGODB_DB=swarmonomicon
    MONGODB_COLLECTION=todos
    

Usage

Starting the Server

  1. Start the FastMCP server:
    python -m src.fastmcp_todo_server
    

Adding Todos

You can add todos using FastMCP in several ways:

  1. Using FastMCP Python client:

    from fastmcp import FastMCPClient
    
    client = FastMCPClient()
    response = await client.call_tool("add_todo", {
        "description": "Example todo",
        "priority": "high",  # optional, defaults to "medium"
        "target_agent": "user"  # optional, defaults to "user"
    })
    
  2. Using MQTT directly:

    mosquitto_pub -t "mcp/todo/new" -m '{
        "description": "Example todo",
        "priority": "high",
        "target_agent": "user"
    }'
    
             ### Development
    
  3. Run tests:

    pytest tests/
    
  4. Run tests with coverage:

    pytest --cov=src tests/
    
  5. Run specific test file:

    pytest tests/test_todo_handler.py -v
    

Integration with Swarmonomicon

This server is part of the larger Swarmonomicon project, which provides:

  • Task management and distribution
  • Agent-based task processing
  • Real-time updates via MQTT
  • Integration with various AI models

For more information about the Swarmonomicon project and its features, check out the main project documentation.

License

MIT License

Contributing

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

For more information about contributing to the Swarmonomicon project, see the main project's contributing guidelines.

Last updated: 4/12/2025

Publisher info

DanEdens's avatar

Dan Edens

🦾Working on stuff thats working on other stuff. Mad Tinker in Test. Automate all the things.

Elemental machines
United States
44
followers
97
following
138
repos

More MCP servers built with Python

Rodin MCP Server

Generate 3D models with Hyper3D Rodin's 3D generation AI

By DeemosTech
mcp-server-webcrawl

Bridge the gap between your web crawler and AI language models using Model Context Protocol (MCP). With mcp-server-webcrawl, your AI client filters and analyzes web content under your direction or autonomously, extracting insights from your web content. Support for WARC, wget, InterroBot, Katana, and SiteOne crawlers is available out of the gate. The server includes a full-text search interface with boolean support, resource filtering by type, HTTP status, and more.

By pragmar
armor-crypto-mcp

Armor Model Context Protocol (MCP) gives developers full access to the blockchain functionality of Armor Wallet. This includes cross-chain swaps, token data, bridging, wallet management, limit orders, staking, and many other features. With the Armor MCP, developers can integrate a complete suite of crypto tools available to their AI Agents quickly and easily for fast, reliable AI Agent development.

By Armor wallet