Skip to content

Commit 7aa5faf

Browse files
Refocus documentation on production transformation
1 parent a94b7fa commit 7aa5faf

File tree

4 files changed

+313
-5762
lines changed

4 files changed

+313
-5762
lines changed

CONTRIBUTING.md

Lines changed: 41 additions & 107 deletions
Original file line numberDiff line numberDiff line change
@@ -1,121 +1,55 @@
1-
# Contributing to Microsoft 365 MCP Server
1+
# Contributing – Production Transformation Track
22

3-
Thank you for your interest in contributing to the Microsoft 365 MCP Server project.
3+
This repository exists to document and maintain the enterprise hardening of
4+
[m365-mcp-server](https://github.com/nikolanovoselec/m365-mcp-server).
5+
All feature development, protocol changes, or Microsoft Graph enhancements should
6+
continue to land in the upstream project. Contributions here must keep both
7+
repositories aligned while focusing on production deployment, security controls,
8+
and operational resilience.
49

5-
## Development Setup
10+
## Contribution Areas
611

7-
### Prerequisites
12+
- Documentation covering Access, AI Gateway, or security posture updates
13+
- Production configuration changes (`wrangler.toml`, bindings, secret handling)
14+
- Operational scripts, validation checklists, or monitoring improvements
15+
- Bug fixes specific to the hardened environment (e.g., gateway error translation)
816

9-
- Node.js 18+
10-
- Microsoft 365 Business/Enterprise account with admin access
11-
- Cloudflare Workers account
12-
- Git
17+
## Workflow
1318

14-
### Local Development
19+
1. Sync the latest changes from upstream `m365-mcp-server`.
20+
2. Apply or adjust production-specific patches in this repository.
21+
3. Run validation locally (`npm run validate`).
22+
4. Document notable adjustments in `OPERATIONS.md` and/or `TECHNICAL.md`.
23+
5. Submit a pull request summarising:
24+
- Upstream baseline commit (if relevant)
25+
- Production changes introduced
26+
- Validation steps performed (Access, OAuth, AI Gateway)
1527

16-
1. Fork and clone the repository
17-
2. Install dependencies: `npm install`
18-
3. Copy configuration files:
19-
```bash
20-
cp .dev.vars.example .dev.vars
21-
cp wrangler.example.toml wrangler.toml
22-
```
23-
4. Configure your Microsoft 365 and Cloudflare credentials
24-
5. Start development server: `npm run dev`
28+
## Local Environment
2529

26-
## Code Standards
30+
Use the upstream repository for feature development workflows. When verifying
31+
production changes locally, mock AI Gateway calls or use a dedicated staging
32+
gateway to avoid polluting production telemetry.
2733

28-
### TypeScript
34+
```bash
35+
npm install
36+
npm run validate
37+
wrangler deploy --env staging
38+
```
2939

30-
- Follow existing TypeScript configurations
31-
- Ensure type safety with `npm run type-check`
32-
- Use proper error handling patterns
40+
Secrets should never be committed or stored in `.dev.vars` when working inside this
41+
repository. Prefer `wrangler secret` even for staging environments.
3342

34-
### Code Quality
43+
## Code & Documentation Standards
3544

36-
- Run linting: `npm run lint`
37-
- Format code: `npm run format`
38-
- Follow existing code style and patterns
45+
- Follow existing TypeScript, ESLint, and Prettier configurations.
46+
- Keep comments concise; favour documentation for detailed explanations.
47+
- Maintain professional tone and ensure docs link back to upstream material when needed.
3948

40-
### Documentation
49+
## Review Expectations
4150

42-
- Update relevant documentation for new features
43-
- Include code examples where appropriate
44-
- Maintain professional tone in all documentation
51+
- Pull requests must include evidence of AI Gateway and Access validation.
52+
- Changes affecting security boundaries require explicit testing notes.
53+
- Ensure backwards compatibility with existing Access policies and gateway routes.
4554

46-
## Testing
47-
48-
Currently, the project has minimal testing infrastructure. When contributing:
49-
50-
- Manually test all changes thoroughly
51-
- Verify OAuth flows work correctly
52-
- Test Microsoft Graph API integrations
53-
- Ensure no breaking changes to existing functionality
54-
55-
## Submission Process
56-
57-
### Pull Requests
58-
59-
1. Create a feature branch from `main`
60-
2. Make your changes with clear, focused commits
61-
3. Update documentation as needed
62-
4. Test your changes thoroughly
63-
5. Submit a pull request with:
64-
- Clear description of changes
65-
- Motivation for the changes
66-
- Testing steps performed
67-
68-
### Commit Messages
69-
70-
- Use clear, descriptive commit messages
71-
- Focus on what the change accomplishes
72-
- Keep messages concise but informative
73-
74-
## Code of Conduct
75-
76-
### Professional Standards
77-
78-
- Maintain professional communication
79-
- Respect other contributors' work and opinions
80-
- Focus on constructive feedback and solutions
81-
- Follow project coding standards consistently
82-
83-
### Security Considerations
84-
85-
- Never commit secrets or credentials
86-
- Use placeholder values in examples
87-
- Follow security best practices
88-
- Report security issues privately
89-
90-
## Areas for Contribution
91-
92-
### High Priority
93-
94-
- Unit and integration test implementation
95-
- Additional Microsoft Graph API tools
96-
- Error handling improvements
97-
- Performance optimizations
98-
99-
### Medium Priority
100-
101-
- Documentation improvements
102-
- Code quality enhancements
103-
- Development workflow improvements
104-
- Example applications
105-
106-
### Low Priority
107-
108-
- Advanced features and extensions
109-
- Alternative authentication methods
110-
- Additional platform integrations
111-
112-
## Getting Help
113-
114-
- Review existing documentation in this repository
115-
- Check existing issues and discussions
116-
- Create an issue for questions or bug reports
117-
- Provide detailed information when reporting issues
118-
119-
## License
120-
121-
By contributing to this project, you agree that your contributions will be licensed under the same MIT License that covers the project.
55+
Thank you for helping maintain the production-ready posture of the Microsoft 365 MCP Server.

0 commit comments

Comments
 (0)