Thanks for your interest in contributing! Every contribution — from fixing a typo to adding a new MCP server — helps make this toolkit better for everyone.
Found something broken? Open an issue with:
- What you expected to happen
- What actually happened
- Steps to reproduce
- Your environment (Node.js version, OS)
Have an idea? Open an issue with the enhancement label. Describe:
- What problem it would solve
- How you imagine it working
- Why it would benefit others
- Copy the template:
cp agents/bnb-chain-agents/agent-template.json agents/bnb-chain-agents/my-agent.json - Edit the agent definition (see Agents Guide)
- Rebuild:
bun run build - Submit a PR
MCP servers live in mcp-servers/. Each server is self-contained with its own package.json.
Documentation is in docs/ and root-level .md files. Fix typos, add examples, clarify confusing sections — all welcome.
The simplest contribution. It helps others discover the project.
git clone https://github.com/YOUR-USERNAME/bnb-chain-toolkit.git
cd bnb-chain-toolkit
bun installgit checkout -b feat/my-improvement
# or
git checkout -b fix/bug-descriptionBranch naming:
feat/— New featuresfix/— Bug fixesdocs/— Documentation changesrefactor/— Code restructuring
- Follow the existing code style
- Update documentation if you change behavior
- Test your changes
- Keep commits focused and atomic
Use gitmoji prefixes:
git commit -m "✨ feat: add new PancakeSwap v4 agent"
git commit -m "🐛 fix: correct gas estimation in bnbchain-mcp"
git commit -m "📝 docs: improve MCP server setup guide"
git commit -m "♻️ refactor: simplify market data caching"git push origin feat/my-improvementThen open a Pull Request with:
- Clear title describing the change
- Description of what and why
- Screenshots if relevant
- Link to related issues
# Install dependencies
bun install
# Build agent index
bun run build
# Format agent JSON files
bun run format
# Lint TypeScript
bun run lint
# Run tests
bun run test
# Type check
bun run type-checkbnb-chain-toolkit/
├── agents/ # Agent definitions (JSON)
├── mcp-servers/ # MCP server implementations
├── market-data/ # Market data libraries
├── defi-tools/ # DeFi utilities
├── wallets/ # Wallet tooling
├── standards/ # ERC-8004 & W3AG
├── docs/ # Documentation
├── src/ # Original agent source JSONs
├── scripts/ # Build tools
└── locales/ # Translation files
- TypeScript — Use strict mode, prefer interfaces over types
- JSON — 2-space indentation, trailing newline
- Markdown — One sentence per line in docs (easier diffs)
- Commits — Gitmoji prefix, imperative mood, keep under 72 chars
Agent translations live in locales/. To add a new language:
- Copy an existing locale directory (e.g.,
cp -r locales/en-US locales/xx-XX) - Translate the JSON files
- Run
bun run i18n:validateto check for completeness
Only translate
locales/zh-CN/for development preview. CI handles the rest.
Be respectful and constructive. See CODE_OF_CONDUCT.md.
Open an issue. There are no dumb questions — if something is confusing, it's a documentation bug.