RubyGems MCP. Audit ownership, track versions, and map dependencies.
Works with every AI agent you already use
…and any MCP-compatible client
Just plug in your AI agents and start using Vinkius.
RubyGems MCP Server lets your AI agent manage the Ruby ecosystem directly. Search for gems using `search_gems`, check a gem's full version history with `get_gem_versions`, and track download statistics instantly via `get_gem_downloads`.
It also handles ownership records—add, remove, or update who owns a package—making it critical for dependency management and security auditing.
What your AI agents can do
Add gem owner
Adds a new owner account to an existing gem package.
Create webhook
Sets up a webhook endpoint that triggers on specified gem events (can apply to all gems using *).
Exchange oidc token
Swaps an OIDC ID token for a temporary, usable API key.
You can search for gems by name, retrieve basic metadata, and pull full details about any specific package.
The server lets you view all current gem owners (get_gem_owners) and modify ownership roles using tools like add_gem_owner or remove_gem_owner.
Retrieve comprehensive lists of every version, identify the latest build, or filter versions by a specific date range.
Get download counts for an entire gem or a single version. You can also see which gems depend on your package using get_reverse_dependencies.
Submit new versions of your code with push_gem, list all your owned packages (list_my_gems), or even remove a gem version from the index using yank_gem.
Ask AI about this MCP
Supported MCP Clients
Waiting for input…
RubyGems MCP Server: 30 Tools for Package Management
These tools allow your agent to perform every key action in gem management—from searching and viewing metadata to managing ownership and pushing new versions.
019e5d51add gem owner
Adds a new owner account to an existing gem package.
019e5d51create webhook
Sets up a webhook endpoint that triggers on specified gem events (can apply to all gems using *).
019e5d51exchange oidc token
Swaps an OIDC ID token for a temporary, usable API key.
019e5d51fire webhook
Tests whether a previously created webhook is working correctly by firing it manually.
019e5d51get api key
Retrieves your personal API key using HTTP Basic Authentication credentials.
019e5d51get compact index info
Returns a text list showing all versions available for one specific gem.
019e5d51get compact index names
Provides a simple, newline-separated list of every registered gem name.
019e5d51get compact index versions
Returns a compact index containing the names, versions, and MD5s for all gems.
019e5d51get downloads
Retrieves the total number of downloads across every gem in the registry.
019e5d51get gem
Gets the basic, core information about a single specified gem package.
019e5d51get gem downloads
Retrieves download statistics for both a specific gem and its precise version number.
019e5d51get gem owners
Displays a list of all users or accounts that currently own the gem.
019e5d51get gem version details v2
Returns highly detailed information for one specific gem version using API v2.
019e5d51get gem versions
Retrieves a complete list of every available version number for a single gem.
019e5d51get just updated activity
Pulls the 50 most recently updated gems in the entire registry.
019e5d51get latest activity
Pulls the 50 most recently added gems to the registry.
019e5d51get latest gem version
Finds and reports the absolute latest version number for any given gem.
019e5d51get my profile
Shows your own account profile details, including whether Multi-Factor Authentication is set up.
019e5d51get owner gems
Lists all the gems that a specified user has permission to publish or push updates to.
019e5d51get profile
Displays basic public information about any user account on the platform.
019e5d51get reverse dependencies
Lists all other gems that explicitly require or depend on the specified gem package.
019e5d51get timeframe versions
Finds and lists gem versions created within a specific date range (dates must be in ISO8601 format).
019e5d51list my gems
Lists all the gems that the authenticated user currently has publishing access to.
019e5d51list webhooks
Displays a list of all webhooks you have registered and configured for your account.
019e5d51push gem
Submits a new version of a gem by uploading its compiled, base64 encoded binary data (.gem file).
019e5d51remove gem owner
Removes an owner account from the ownership list of a specific gem.
019e5d51remove webhook
Deletes and removes a registered webhook endpoint.
019e5d51search gems
Searches for active gems based on a query string; results are paginated (30 per page).
019e5d51update gem owner
Changes the role or status of an owner account associated with a gem.
019e5d51yank gem
Removes (yanks) a specific version of a gem from the public index, making it unavailable for dependency resolution.
Choose How to Get Started
Build a custom MCP for your own tools, or connect a ready-made integration from our catalog.
Build Your Own
Turn any API into an MCP. Import a spec, define Agent Skills, or deploy with MCPFusion.
- Import from OpenAPI, Swagger, or YAML specs
- Create Agent Skills with progressive disclosure
- Deploy to edge with MCPFusion framework
- Built in DLP, auth, and compliance on every call
- Real time usage dashboard and cost metering
- Publish to catalog or keep private
Make Your AI Do More
Start with RubyGems, then connect any of our 4,700+ other servers whenever your AI needs more. One click, no limits.
- Use this MCP plus 4,700+ others, all in one place
- Add new capabilities to your AI anytime you want
- Every connection is secured and compliant automatically
- Track usage and costs across all your servers
- Works with Claude, ChatGPT, Cursor, and more
- New servers added to the catalog every week
What you can do with this MCP connector
Yo, check this out. This server lets your AI agent handle the whole Ruby ecosystem, straight up from the command line into natural conversation. You're not dealing with some clumsy API playground; you're managing gem metadata, ownership records, and download stats for the world’s largest package registry.
Gem Discovery & Metadata Retrieval
You can search active gems using search_gems; it returns results paginated at 30 per page based on a query string. Need basic info on one specific gem? Use get_gem. For a quick list of every registered gem name, get_compact_index_names gives you a newline-separated dump. If you need more detail on all available versions for a single package, run get_compact_index_info.
You can also grab a compact index containing the names, versions, and MD5s for every gem using get_compact_index_versions. To get the full rundown of version numbers for any given gem, call get_gem_versions; alternatively, you'll find the absolute most recent build number with get_latest_gem_version, or narrow down versions created between specific dates using get_timeframe_versions (you gotta use ISO8601 format for those dates).
You can get core information about a single gem version using API v2 via get_gem_version_details_v2.
Usage Tracking and Dependency Mapping
Want to know how popular stuff is? You can retrieve the total download count across every gem in the registry with get_downloads. For specific metrics, you'll get download statistics for a single gem and its exact version number using get_gem_downloads. To see which gems depend on yours, check the dependency graph using get_reverse_dependencies.
You can also pull usage data for all 50 most recently updated gems with get_just_updated_activity or see the 50 newest additions to the registry via get_latest_activity.
Ownership and Access Control
The server lets you audit who owns a gem. You can view every current owner or account for a package using get_gem_owners. If you need to change ownership, use add_gem_owner to bring on a new owner account, remove_gem_owner to take someone off the list, or update_gem_owner to modify an existing role.
You'll also see which gems your user account has permission to publish updates for by calling get_owner_gems, and you can get a complete list of all gems you have publishing access to using list_my_gems. If you want to see basic public info about any user, run get_profile; or check out your own credentials and MFA setup with get_my_profile.
Lifecycle Management and Publishing
You're managing the code base here. You can submit a brand new version of your gem by uploading its compiled, base64 encoded binary data (.gem file) using push_gem. If you need to remove a specific version from public resolution—like it had a bug—use yank_gem to take that version offline. For managing external connections, you can set up a webhook endpoint that triggers on specified gem events (it applies globally if you use *), and then test whether that setup actually works by manually firing the webhook with fire_webhook; you'll remove any configured hook using remove_webhook.
You can list all webhooks already registered for your account via list_webhooks.
Authentication & Account Management
Your AI client handles authentication too. You retrieve your personal API key using HTTP Basic Authentication credentials with get_api_key, and if you're dealing with OAuth, you can swap an OIDC ID token for a temporary, usable API key by calling exchange_oidc_token.
How RubyGems MCP Works
- 1 Subscribe to the RubyGems server and provide your API Key.
- 2 Ask your AI client for a specific action—for example, 'What are the dependencies for rails?'
- 3 The agent executes
get_reverse_dependenciesand gives you a clean list of all relying gems.
The bottom line is that it lets you manage Ruby package metadata using conversation instead of jumping through command-line flags.
Who Is RubyGems MCP For?
This is for the developer who spends too much time running repetitive gem list and gem spec commands. If checking dependency health, auditing ownership, or tracking package usage metrics are part of your job, this saves you from context switching between documentation and terminal windows.
Checks gem documentation, verifies dependencies, and needs to quickly pull the latest version details for a specific library.
Monitors package activity, tracks download trends for critical infrastructure components, and runs periodic dependency checks on build pipelines.
Analyzes gem ownership records and version history to audit supply chain risks or verify who has publishing access to a specific library.
What Changes When You Connect
- Check gem metadata instantly. Instead of running
gem specrepeatedly, ask your agent to useget_gemfor immediate details on any package. - Master dependency mapping. Running
get_reverse_dependenciestells you exactly which other gems rely on the one you're building—crucial before a release. - Keep track of usage metrics without leaving chat. Use
get_gem_downloadsto see how many times a specific version of Sidekiq has been downloaded, all in one prompt. - Manage ownership risks with precision. Tools like
add_gem_owner,remove_gem_owner, andupdate_gem_ownerlet you control who can publish code after running basic checks. - Streamline release management. Use
get_latest_gem_versionto find the current stable build, then usepush_gemto submit your fix—all without manual CLI switching.
Real-World Use Cases
Auditing a Supply Chain Risk
A security researcher needs to know if a gem they rely on has been compromised. They ask their agent: 'List all owners for the 'rails' gem and show me any gems that depend on it.' The agent runs get_gem_owners and then follows up with get_reverse_dependencies, providing an immediate risk assessment.
Checking Release Readiness
A developer just finished a feature. Before pushing, they ask the agent: 'What is the latest version of my gem? And how many downloads did v1.0 track last month?' The agent uses get_latest_gem_version and then queries get_gem_downloads, confirming readiness before calling push_gem.
Investigating a Legacy Gem
A team member finds an old gem used somewhere. They ask: 'Show me all versions of this gem, and also list every other package that uses it.' The agent runs get_gem_versions for historical context and then calls get_reverse_dependencies to find the root cause.
Onboarding a New Contributor
A developer needs to grant publishing rights. They ask: 'Who owns this gem, and how do I add John Doe as a secondary owner?' The agent runs get_gem_owners first, then uses add_gem_owner, keeping the entire process within the conversation flow.
The Tradeoffs
Trying to check everything in one go
Manually running five different commands like 'gem list', then 'get version details', then 'check downloads' just because you forgot the exact tool name.
→
Don't run them sequentially. Start with a targeted search: Use search_gems to narrow down your gem, and then use specific tools like get_gem_downloads or get_reverse_dependencies for deep data.
Confusing metadata with running code
Thinking that just knowing the latest version (via get_latest_gem_version) means you can run it immediately in your environment.
→ Remember, this server is for data. It tells you what exists and how many people use it. To actually execute code or manage local dependencies, use a dedicated build tool like Bundler.
Assuming ownership access
Running add_gem_owner without confirming your credentials first.
→
Before making any write changes, always run get_my_profile and use get_api_key to verify your authentication status. Never assume you have full permissions.
When It Fits, When It Doesn't
Use this MCP Server if your primary need is auditing, discovery, or reporting on the gem registry itself. Specifically: If you need to know 'Who owns X?', 'Which gems depend on Y?', or 'What was the download count for Z in Q2?', use these tools. They are built for deep metadata querying and lifecycle management.
Don't use this server if:
1. You need to write a new feature that uses the gem (Use your IDE/bundler).
2. You need to execute a complex, multi-step CI/CD pipeline (You need dedicated orchestration tools like Jenkins or GitHub Actions).
3. You are trying to view live application logs (This is a registry API, not a logging service).
If the answer to 'Does this task involve querying publicly available gem metadata?' is yes, then this server has the right tool for you.
Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by RubyGems. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.
VINKIUS INFRASTRUCTURE
Cloud Hosted
Managed infra
V8 Isolated
Sandboxed per request
Zero-Trust Proxy
No stored credentials
DLP Enforced
Policy on every call
GDPR Compliant
EU data residency
Token Compression
~60% cost reduction
Works with Claude, ChatGPT, Cursor, and more
The Model Context Protocol standardizes how applications expose capabilities to LLMs. Instead of operating in isolation, your AI gains direct access to external platforms, live data, and real-world actions through secure, standardized connections.
This server provides 30 capabilities that interface natively with Claude, ChatGPT, Cursor, and any MCP client. No middleware. No custom integration required.
Available Capabilities
Checking dependency status shouldn't feel like running five different terminal commands.
Today, checking a gem’s health means switching between `gem list`, hitting the official website to check versions, and then maybe pulling up a separate dashboard just for download stats. You copy-paste names, you run multiple flags, and it always feels like a manual chore that takes forever.
With this MCP server, you just ask your agent: 'What's the dependency map for Sidekiq?' It runs `get_reverse_dependencies`, aggregates the info, and gives you a clean list in seconds. You get the answer without ever leaving your chat window.
RubyGems MCP Server: Manage gem versions and ownership.
Gone are the days of manually checking who has publishing rights or having to guess if a version is stable. You can use `get_gem_owners` to see the full roster, then run `get_timeframe_versions` to pinpoint exactly when a specific build was created.
This isn't just about reading data; it’s about control. It lets you manage that lifecycle—from discovery via `search_gems` to publishing with `push_gem`, and even pulling bad versions off the index using `yank_gem`. You get full command-level control, conversationally.
Common Questions About RubyGems MCP
How do I check how many times a gem has been downloaded using get_gem_downloads? +
Use get_gem_downloads and provide the exact gem name and version number. This tool returns specific stats, while get_downloads gives you the total count across all versions.
What is the difference between get_gem and search_gems? +
search_gems finds potential matches based on a query string (like 'redis'). Once you select one, use get_gem to pull the complete, basic metadata for that specific gem package.
Can I list all gems owned by my account using list_my_gems? +
Yes. Running list_my_gems retrieves a definitive list of every gem you have push access to, which is useful for inventorying your published work.
How do I see what gems depend on my current package? (get_reverse_dependencies) +
You call get_reverse_dependencies and pass the name of your gem. The server then returns a list of every other registered gem that requires yours, which is critical for impact assessment.
If I lose access, how can I retrieve my API credentials using get_api_key? +
The get_api_key tool retrieves your current API key using HTTP Basic Auth. This is the primary way to re-establish connection credentials for your AI client when you don't have them handy.
What happens when I use remove_gem_owner on a gem? +
The remove_gem_owner tool revokes another user's ownership status from the specified gem. This is crucial for managing security and access rights to your packages.
Is using yank_gem permanent, or can I restore a removed version? +
Yanking a gem removes that specific version from the public index listing. It's an explicit action designed to prevent accidental usage of potentially faulty code.
Using get_compact_index_names, what format does the output provide? +
The get_compact_index_names tool returns a simple newline-delimited list. This makes it easy for your agent to process and iterate through every available gem name at once.
Can I see which gems depend on a specific gem? +
Yes! Use the get_reverse_dependencies tool with the gem name. It will return a list of all gems on RubyGems.org that list that gem as a dependency.
How do I check my own gems and their status? +
By providing your API key, you can use the list_my_gems tool. This will display all gems where you have push access and ownership rights.
Can I get the full version history of a package? +
Absolutely. The get_gem_versions tool retrieves every published version of a specific gem, allowing you to audit changes and release frequency.
Use it with your favorite AI tools
Connect this server to Cursor, Claude, VS Code, and more.
More in this category
LangGraph Cloud (Stateful AI Agents)
Orchestrate stateful AI agents via LangGraph Cloud — manage assistants, monitor conversation threads, and handle human-in-the-loop overrides.
Juhe Data / 聚合数据
China's leading API aggregator — access weather, ID verification, IP lookup, and news via AI.
IoTeX (IoTeX Block Explorer API)
Access IoTeX blockchain data — query accounts, blocks, transactions, and token details directly from your AI agent.
You might also like
Bugcrowd
Manage crowdsourced security via Bugcrowd — track submissions, programs, and targets directly from any AI agent.
LlamaIndex (AI Data Framework & RAG)
Query and manage RAG pipelines via LlamaIndex — execute natural language searches, audit indexed files, and monitor data pipelines.
Odoo Purchase
Create purchase orders, manage RFQs, search vendors, and track procurement — Odoo Purchasing through natural conversation.