Mirror of https://github.com/modelcontextprotocol/quickstart-resources — A repository of servers and clients from the Model Context Protocol tutorials
- JavaScript 19.6%
- Rust 17.3%
- Go 16.6%
- TypeScript 13.2%
- Ruby 11.8%
- Other 21.5%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
The client tests drive the path where no key is set: each client prints a notice and exits. They did not isolate the variable, so a key exported in the environment or sitting in a local .env sent the client into its interactive chat loop instead. Observed with a .env in mcp-client-ruby: the run reached "Query:" and waited on stdin. Empty rather than unset, because dotenv skips a name already present in ENV. All three clients check `nil? || empty?`, so an empty value takes the early exit. CI never hit this, having no key set. It affects local runs, and a run fed input rather than /dev/null would issue real API requests. Applied to the Python and TypeScript client tests too; all three share the pattern. Also correct the Ruby version comment: 3.3 is supported until March 2027, so 3.4 is not the oldest supported series. The tested version is unchanged. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> |
||
| .github/workflows | ||
| mcp-client-go | ||
| mcp-client-python | ||
| mcp-client-ruby | ||
| mcp-client-rust | ||
| mcp-client-typescript | ||
| tests | ||
| weather-server-go | ||
| weather-server-python | ||
| weather-server-ruby | ||
| weather-server-rust | ||
| weather-server-typescript | ||
| .gitattributes | ||
| .gitignore | ||
| LICENSE | ||
| README.md | ||
| SECURITY.md | ||
Quickstart Resources
A repository of servers and clients from the following Model Context Protocol tutorials:
- Build an MCP server – a simple MCP weather server
- Build an MCP client – an LLM-powered chatbot MCP client
Security Note
These examples are intentionally minimal. If you expose an MCP server over a network (HTTP/SSE/WebSocket), add authentication and basic hardening (CORS allowlist, request size limits, timeouts, rate limits, and log redaction). See SECURITY.md.