ruby-sdk/mcp.gemspec
Koichi ITO 912245dc11 Reduce release package size
The current release package contains files that are not required at runtime,
such as `.github`, `docs`, and `examples`.

```ruby
Dir.chdir(File.expand_path("..", __FILE__)) do
  %x(git ls-files -z).split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
end
=>
[".gitattributes",
 ".github/dependabot.yml",
 ".github/workflows/ci.yml",
 ".github/workflows/release.yml",
 ".gitignore",
 ".rubocop.yml",
 "AGENTS.md",
 "CHANGELOG.md",
 "CODE_OF_CONDUCT.md",
 "Gemfile",
 "LICENSE",
(snip)
```

This PR removes unnecessary files where possible to reduce the size of the release package.
2026-02-25 19:05:02 +09:00

33 lines
1.3 KiB
Ruby

# frozen_string_literal: true
require_relative "lib/mcp/version"
Gem::Specification.new do |spec|
spec.name = "mcp"
spec.version = MCP::VERSION
spec.authors = ["Model Context Protocol"]
spec.email = ["mcp-support@anthropic.com"]
spec.summary = "The official Ruby SDK for Model Context Protocol servers and clients"
spec.description = spec.summary
spec.homepage = "https://github.com/modelcontextprotocol/ruby-sdk"
spec.license = "Apache-2.0"
# Since this library is used by a broad range of users, it does not align its support policy with Ruby's EOL.
spec.required_ruby_version = ">= 2.7.0"
spec.metadata["allowed_push_host"] = "https://rubygems.org"
spec.metadata["changelog_uri"] = "https://github.com/modelcontextprotocol/ruby-sdk/releases/tag/v#{spec.version}"
spec.metadata["homepage_uri"] = spec.homepage
spec.metadata["source_code_uri"] = spec.homepage
spec.metadata["bug_tracker_uri"] = "#{spec.homepage}/issues"
spec.metadata["documentation_uri"] = "https://rubydoc.info/gems/mcp"
spec.files = Dir["LICENSE", "README.md", "lib/**/*"]
spec.bindir = "exe"
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
spec.require_paths = ["lib"]
spec.add_dependency("json-schema", ">= 4.1")
end