A repository of servers and clients from the Model Context Protocol tutorials
by modelcontextprotocolGo
5 of 6 standards met
Adds a GitHub Actions workflow that scans PRs for security risks using Pipelock. What it checks: Exposed credentials, API keys, and tokens in diffs Prompt injection patterns Common security issues in MCP projects How it works: Runs on every PR to main Read-only permissions (contents: read) Fails the check if it finds something No configuration needed Single workflow file, no changes to existing code or CI. Complements the existing CI workflow with security scanning.
These quickstart examples are intentionally minimal and often run locally via stdio. This PR adds a short security note in the root README plus a checklist for anyone who adapts these examples into a network-exposed MCP server (HTTP/SSE/WebSocket): auth, CORS allowlist, request size limits, timeouts, rate limits, log redaction, and avoiding obvious RCE primitives. No CI/workflow changes; docs only.
Repository: modelcontextprotocol/quickstart-resources. Description: A repository of servers and clients from the Model Context Protocol tutorials Stars: 1001, Forks: 577. Primary language: Go. Languages: Go (24.7%), Rust (23.7%), TypeScript (21%), Python (15.5%), Shell (9.9%). Open PRs: 3, open issues: 12. Last activity: 9h ago. Community health: 100%. Top contributors: a-akimov, dsp-ant, dependabot[bot], jonathanhefner, allenzhou101, amikai, jspahrsummers, zckly, YichiZ, idoco and others.
Last 12 weeks · 65 commits
Describe the bug After following the typescript mcp server tutorial verbatim, claude desktop cannot successfully use the new weather tools. Upon inspecting the logs, this is due to . Apparently a global isn't available in Node 16. It was introduced in Node 18. To Reproduce Steps to reproduce the behavior: 1. Follow the tutorial verbatim here: https://modelcontextprotocol.io/docs/develop/build-server#typescript 2. Ask claude desktop about the weather forecast 3. It will fail and tell you "Failed to retrieve grid point data for coordinates: 38.5816, -121.4944. This location may not be supported by the NWS API (only US locations are supported)." 4. Ask claude desktop about weather alerts 5. It will fail and tell you "Failed to retrieve alerts data" Expected behavior It is expected that the MCP server we just configured with weather tools will work. Logs Another solution would be to manually configure it to use the right node executable:
Motivation and Context Add a weather server example using the MCP Ruby SDK and the National Weather Service API, following the same pattern as other language examples. https://github.com/modelcontextprotocol/ruby-sdk Types of changes [ ] Bug fix (non-breaking change which fixes an issue) [x] New feature (non-breaking change which adds functionality) [ ] Breaking change (fix or feature that would cause existing functionality to change) [x] Documentation update Checklist [x] I have read the MCP Documentation [x] My code follows the repository's style guidelines [x] New and existing tests pass locally [x] I have added appropriate error handling [x] I have added or updated documentation as needed
Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] Describe the solution you'd like A clear @olaservo /d concise description of what you want to happen. #106 Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered. Additional context Add any other context or screenshots about the feature request here.
Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] Describe the solution you'd like A clear and concise description of what you want to happen. Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered. Additional context Add any other context or screenshots about the feature request here.