Thank you for helping make ToolsDNS better! This guide gets you from zero to your first merged PR.
# Fork on GitHub, then:
git clone https://github.com/YOUR_USERNAME/ToolsDNS.git
cd ToolsDNS
python3 -m venv .venv && source .venv/bin/activate
pip install -e .
toolsdns serve # API at http://localhost:8787, MCP at http://127.0.0.1:8788/mcp/Check the open issues — anything labelled good first issue is a great starting point.
| Label | Meaning |
|---|---|
good first issue |
Small, well-defined, great for first-timers |
help wanted |
We'd love a contributor to pick this up |
marketplace |
Adding a new MCP server to the catalog |
skill |
Adding or improving a SKILL.md file |
bug |
Something broken that needs fixing |
performance |
Speed or memory improvement |
All PRs target the develop branch. master is for stable releases only.
git checkout develop
git checkout -b feat/my-feature # branch off develop
# ... make changes ...
git push origin feat/my-feature
# Open PR → base: develop- One thing per PR — focused PRs get reviewed faster
- Test it manually — run
toolsdns serveand verify your change works end-to-end - Don't include unrelated changes — no reformatting unrelated files
- Describe what and why — a short PR description helps reviewers
- No secrets in code — the security workflow scans for API keys and tokens
Edit tooldns/marketplace.py — add to the MARKETPLACE list:
{
"id": "your-server",
"name": "Your Server Name",
"description": "One sentence: what it does",
"category": "Dev & Code", # use an existing category
"emoji": "🔧",
"install": {
"type": "mcp_http", # or "mcp_stdio"
"url": "https://your-mcp-server.com/mcp",
"env_vars": ["YOUR_API_KEY"],
}
}Edit tooldns/categories.py — add to _PREFIX_MAP or _KEYWORD_RULES:
_PREFIX_MAP = {
"YOURSERVICE": "Your Category", # matches YOURSERVICE_* tool names
...
}- Reproduce the bug locally
- Fix it
- Verify the fix via
curl http://localhost:8787/...or the relevant API endpoint - Submit PR with "fix: description of what was broken"
Use conventional commits:
feat:— new featurefix:— bug fixperf:— performance improvementdocs:— documentation onlyrefactor:— code change that neither fixes a bug nor adds a featurechore:— maintenance (deps, CI, config)
- Open a discussion for ideas
- Open an issue for bugs
- Email hello@toolsdns.com for anything else