Dans Fastmcp Server Template
FastMCP-based Todo Server for Swarmonomicon
Ask AI about Dans Fastmcp Server Template
Powered by Claude · Grounded in docs
I know everything about Dans Fastmcp Server Template. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
FastMCP Server Template
A FastMCP Server Template for the Swarmonomicon project. etc
Features
- FastMCP server for receiving requests
- MongoDB integration for todo storage
- Compatible with Swarmonomicon todo worker
- Python-based implementation
Installation
-
Clone the repository:
git clone https://github.com/DanEdens/PROJECT_NAME.git cd PROJECT_NAME -
Install uv (if not already installed):
curl -LsSf https://astral.sh/uv/install.sh | sh -
Create and activate a virtual environment with uv:
uv venv source .venv/bin/activate # On Unix/macOS # or .venv\Scripts\activate # On Windows -
Install dependencies with uv:
uv pip install -r requirements.txt -
For development, install additional dependencies:
uv pip install -r requirements-dev.txt -
Create a
.envfile with your configuration:MONGODB_URI=mongodb://localhost:27017 MONGODB_DB=PROJECT_NAME MONGODB_COLLECTION=PROJECT_NAME
Usage
Starting the Server
- Start the FastMCP server:
python -m src.PROJECT_NAME
Adding Todos
You can add todos using FastMCP in several ways:
-
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" }) -
Using MQTT directly:
mosquitto_pub -t "mcp/todo/new" -m '{ "description": "Example todo", "priority": "high", "target_agent": "user" }'
Development
-
Run tests:
pytest tests/ -
Run tests with coverage:Alex
pytest --cov=src tests/ -
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
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests for new functionality
- Submit a pull request
For more information about contributing to the Swarmonomicon project, see the main project's contributing guidelines.
