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%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
olaservo 75796e0c98 Cover the Ruby MCP client in the smoke tests
CI installed no Ruby toolchain and the suite ran no Ruby example, so
nothing under mcp-client-ruby or weather-server-ruby was exercised by a
green build. A dependency change there -- #177 removes the base64 gem
now that the anthropic gem declares it -- merges on the strength of a
check that never resolved its Gemfile.

The client is drivable without credentials: it connects before it looks
for ANTHROPIC_API_KEY and exits 0 when there is none, the same shape the
Python and TypeScript clients already rely on for their coverage.

The Ruby weather server stays uncovered. The mcp gem's server does not
emit the resultType field that protocol revision 2026-07-28 makes
mandatory, so the test client rejects its responses; that is a fix for
the gem rather than something an example can work around. The README
said the gem could not negotiate the revision at all, which stopped
being true at 1.1.0 -- it negotiates, then answers incompletely.

Ruby 3.4 rather than the 3.2.0 floor the anthropic gem declares: 3.2
reached end of life in March 2026, and a gem's floor says what it
tolerates, not what an example should tell people to run.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-09 21:11:42 -07:00
.github/workflows Cover the Ruby MCP client in the smoke tests 2026-08-09 21:11:42 -07:00
mcp-client-go Update quickstart URLs (#140) 2026-05-16 08:59:02 -07:00
mcp-client-python Add structured content to the Python weather server and client and update to v2 (#164) 2026-08-09 14:46:03 +02:00
mcp-client-ruby Update Ruby MCP client example (#177) 2026-08-09 20:52:33 -07:00
mcp-client-rust Update quickstart URLs (#140) 2026-05-16 08:59:02 -07:00
mcp-client-typescript Bump the npm_and_yarn group across 3 directories with 2 updates 2026-07-23 15:14:04 +00:00
tests Cover the Ruby MCP client in the smoke tests 2026-08-09 21:11:42 -07:00
weather-server-go Update quickstart URLs (#140) 2026-05-16 08:59:02 -07:00
weather-server-python Add structured content to the Python weather server and client and update to v2 (#164) 2026-08-09 14:46:03 +02:00
weather-server-ruby Update quickstart URLs (#140) 2026-05-16 08:59:02 -07:00
weather-server-rust Update quickstart URLs (#140) 2026-05-16 08:59:02 -07:00
weather-server-typescript Bump the npm_and_yarn group across 3 directories with 2 updates 2026-07-23 15:14:04 +00:00
.gitattributes Add .gitattributes to mark lock files as generated 2025-12-12 09:52:25 -06:00
.gitignore Assert on structured output in the smoke tests and update to v2 (#163) 2026-08-03 19:42:57 +02:00
LICENSE chore: update licensing to Apache 2.0 for new contributions 2026-01-12 22:49:32 +00:00
README.md Update quickstart URLs (#140) 2026-05-16 08:59:02 -07:00
SECURITY.md docs: add security notes for network-exposed MCP servers 2026-02-07 12:55:02 +01:00

Quickstart Resources

A repository of servers and clients from the following Model Context Protocol tutorials:

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.