We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/allkindsxyz/railway-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
CONTRIBUTING.mdโข3.87 kB
# Contributing to Railway MCP Server
Thank you for your interest in contributing to Railway MCP Server! ๐
## ๐ Getting Started
### Prerequisites
- Node.js 18+
- Railway account and API token
- Basic knowledge of TypeScript and MCP protocol
### Development Setup
1. **Clone the repository**
```bash
git clone https://github.com/your-username/railway-mcp-server.git
cd railway-mcp-server
```
2. **Install dependencies**
```bash
npm install
```
3. **Set up environment**
```bash
cp env.example .env
# Add your Railway token to .env
```
4. **Build the project**
```bash
npm run build
```
5. **Test with MCP Inspector**
```bash
npm run inspector
```
## ๐ ๏ธ Development
### Project Structure
```
src/
โโโ index.ts # Main MCP server implementation
โโโ types/ # TypeScript type definitions (future)
โโโ utils/ # Utility functions (future)
โโโ tests/ # Test files (future)
```
### Available Scripts
- `npm run build` - Build TypeScript to JavaScript
- `npm run dev` - Watch mode for development
- `npm start` - Run the server
- `npm run inspector` - Launch MCP Inspector for testing
### Code Style
- Use TypeScript strict mode
- Follow existing code patterns
- Add JSDoc comments for public functions
- Use meaningful variable and function names
## ๐งช Testing
Currently we test manually with MCP Inspector. Future improvements:
- Unit tests with Jest
- Integration tests with Railway API
- End-to-end tests with Claude Desktop
## ๐ Documentation
When contributing, please:
- Update README.md if adding new features
- Add examples to EXAMPLES.md for new tools
- Update CLAUDE_SETUP.md if changing setup process
## ๐ Bug Reports
When reporting bugs, please include:
- Operating system and version
- Node.js version
- Railway MCP Server version
- Steps to reproduce
- Expected vs actual behavior
- Error messages or logs
## ๐ก Feature Requests
We welcome feature requests! Please:
- Check existing issues first
- Describe the use case clearly
- Explain why it would be valuable
- Consider implementation complexity
## ๐ง Pull Requests
### Before Submitting
1. Ensure your code builds without errors
2. Test with MCP Inspector
3. Update documentation if needed
4. Follow the existing code style
### PR Guidelines
- Use descriptive commit messages
- Reference related issues
- Include screenshots/examples if UI-related
- Keep PRs focused on single features/fixes
### Commit Messages
We use conventional commits format:
```
feat: add deployment rollback functionality
fix: handle null deployment logs
docs: update Claude Desktop setup guide
```
## ๐ฏ Roadmap & Ideas
### High Priority
- [ ] Unit tests and CI/CD
- [ ] Error handling improvements
- [ ] Railway Webhooks support
- [ ] Deployment metrics and monitoring
### Medium Priority
- [ ] Multiple Railway accounts support
- [ ] Custom Railway API endpoints
- [ ] Deployment templates and presets
- [ ] Railway billing and usage info
### Low Priority
- [ ] GUI for MCP server management
- [ ] Railway Teams support
- [ ] Advanced filtering and search
- [ ] Export deployment reports
## ๐ Railway API Coverage
### โ Implemented
- Projects management
- Services management
- Deployments control
- Environment variables
- Deployment logs
### ๐ Planned
- Webhooks management
- Volume management
- Network configuration
- Billing information
- Team management
## ๐ค Community
- **GitHub Issues**: Bug reports and feature requests
- **GitHub Discussions**: General questions and ideas
- **Railway Discord**: Railway-specific questions
## ๐ License
By contributing, you agree that your contributions will be licensed under the MIT License.
## ๐ Recognition
Contributors will be:
- Listed in README.md
- Credited in release notes
- Given GitHub contributor status
---
**Happy coding!** ๐