Skip to main content
Glama
genoxdeveloper

@buygit/mcp-server

@buygit/mcp-server

buygit-mcp-server MCP server

The only MCP that returns license + supply-chain risk + popularity + price in a single call. 78,094 curated Git assets. Zero config. MIT. Free forever.

MCP server for the BuyGit Open Index — 78,094 curated, deduplicated, license-tagged Git assets from GitHub, Codeberg, npm, crates.io, WordPress, HuggingFace, and 17 other sources — to Claude Desktop, Cursor, Cline, Continue, ChatGPT Apps SDK, and any MCP 2025-11-25 client.

npm license

Companion: @buygit/cli — same answers from your shell. npx @buygit/cli search "react form" --license MIT.

Companion: buygit-vscode extension — license-compat + audit from the VS Code command palette + explorer right-click. See packages/vscode-extension.

Works in Antigravity, Claude Desktop, Claude Code, Cursor, Cline, Codex CLI, Continue, Gemini CLI, OpenCode, Roo Code, Windsurf, Zed, and any MCP 2025-11-25 client. Full install matrix in CLIENTS.md.

Cursor one-click install: cursor://anysphere.cursor-deeplink/mcp/install?name=buygit&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBidXlnaXQvbWNwLXNlcnZlckBsYXRlc3QiXX0=

What is BuyGit?

BuyGit is an open marketplace and discovery platform for Git-based digital products — source code, templates, SaaS starters, boilerplates, plugins, AI agents, ML models, and developer tools.

Unlike raw GitHub search, BuyGit curates, deduplicates, and enriches every listing with structured metadata:

  • License classification — SPDX identifier + category (permissive / weak-copyleft / strong-copyleft / proprietary) + plain-English compatibility warnings

  • Supply-chain risk scoring — 0-100 composite score based on dependency hygiene, secret scan status, malware flags, and maintenance signals

  • Popularity scoring — log-scaled 0-100 star score normalized across sources (GitHub, npm, crates.io, etc.)

  • Pricing tier — free vs. paid, with USD price for premium listings

  • Repository health — stars, forks, language, last commit date, archived/disabled status, upstream health

The catalog currently indexes 78,094 crawler-imported listings from 17+ sources, with continuous crawling adding new assets daily. BuyGit also supports seller-curated premium listings (marketplace), but the MCP server exposes only the public crawler-imported catalog — no auth required.

Key URLs:

Related MCP server: proof-of-commitment

Every tool returns a 4-axis signals block — the differentiator. No other MCP gives you this in one call.

{
  "license_category": "permissive",
  "license_warning": null,
  "popularity": 75,
  "risk": 0,
  "price_usd": 0,
  "pricing_tier": "free"
}

User question

github-mcp

Smithery code-search

context7

Socket MCP

BuyGit MCP

"MIT-compatible image diff library"

raw search, no license

raw search

docs only

safety only

license-filtered

"Is this dependency safe to bundle?"

Socket score

Socket + popularity + license fused

"Compare A vs B by license + activity"

4+ calls

4+ calls

1 call

"Alternative to GPL X, but MIT-only"

buygit_find_alternative

"Is GPL-3.0 safe in my MIT project?"

license_warning field

"Explain this listing for me"

buygit_explain (AI summary)

"Deep audit with companion MCPs"

manual

separate

buygit_deep_audit (federation)

We also tell you when NOT to use us — see WHEN_NOT_TO_USE.md.

What you get

14 tools, 7 resource templates, 4 prompts — all backed by the public, read-only, free-forever BuyGit Open Index API. Full client install matrix in CLIENTS.md (13 clients).

Tool

One-line value

buygit_search

Curated, license-tagged, risk-scored search across 78,094 assets. fields= sparse fieldset + summary_mode=compact for token savings.

buygit_get_listing

Replaces 3 separate MCP calls — license + risk + popularity + repo signals + similar in one shot

buygit_list_categories

Full taxonomy with per-category counts

buygit_trending

Curated trending (not GitHub Trending noise), license-aware

buygit_compare

Single-call 2-5 way comparison with license_warning

buygit_stats

Catalog meta — totals by license, category, source, plus data_freshness

buygit_random

Surprise me — license + risk badges on every pick

buygit_find_alternative

License-filtered, risk-scored alternatives — the answer GitHub search cannot give

buygit_check_license_compat

"Is GPL-3 safe in my MIT project?" Returns compatible / review / incompatible with note. The only MCP that answers this without a separate SCA tool.

buygit_audit_repo

Audit any external GitHub repo URL — same 4-axis signals as catalog rows, via live GitHub probe. Falls back to richer cached signals when URL is in our index.

buygit_explain

v0.9.0 · AI-powered listing summary (overview / license / risk / usage focus). Gated on ANTHROPIC_API_KEY. Uses Claude Haiku for cost-efficient summaries.

buygit_diff_versions

v0.9.0 · Time-window signal diff — shows how a listing's license, popularity, and risk changed between snapshots.

buygit_deep_audit

v0.9.0 · Federated deep audit — chains Socket, OpenSSF Scorecard, and TruffleHog companion MCPs alongside BuyGit's own signals for a comprehensive security audit.

search_tools

Meta routing tool — give it a plain-English intent, get the ranked tool to call next. MCP Tool Search Tool semantic.

Resources let you @-mention a listing, category, comparison, or any cacheable static asset and have it attached as conversation context — no tools/call required:

  • buygit://listing/{slug} — full listing detail with 4-axis signals

  • buygit://category/{slug} — category top 20

  • buygit://compare/{slug-a}+{slug-b}+{slug-c} — single-fetch 2-5 way compare

  • buygit://trending/{period} — day/week/month trending, pin once and re-reference

  • buygit://stats — catalog meta + data_freshness, pin to know catalog scale

  • buygit://category-tree — full taxonomy lookup table

  • buygit://license/{spdx} — compatibility matrix row for any SPDX id

Prompts (slash-menu in Claude Desktop):

  • starter_for_stack — "Find me a starter kit for {stack}"

  • alternative_to — "Alternatives to {repo}"

  • audit_my_dependency — "Is {slug} safe to ship?"

  • explore_category — "What's hot in {category}?"

Install

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json on macOS or %APPDATA%\Claude\claude_desktop_config.json on Windows:

{
  "mcpServers": {
    "buygit": {
      "command": "npx",
      "args": ["-y", "@buygit/mcp-server@latest"]
    }
  }
}

Restart Claude Desktop. The first tool call may take a few seconds while npx resolves the package.

Cursor

Edit ~/.cursor/mcp.json:

{
  "mcpServers": {
    "buygit": {
      "command": "npx",
      "args": ["-y", "@buygit/mcp-server@latest"]
    }
  }
}

Cline (VS Code extension)

Open the Cline MCP settings (Cline: Open MCP Servers from the command palette) and add:

{
  "buygit": {
    "command": "npx",
    "args": ["-y", "@buygit/mcp-server@latest"]
  }
}

Continue

Continue picks up MCP servers from ~/.continue/config.json:

{
  "mcpServers": {
    "buygit": {
      "command": "npx",
      "args": ["-y", "@buygit/mcp-server@latest"]
    }
  }
}

Self-hosted via Docker

docker run -i --rm ghcr.io/buygit/mcp-server:latest

The container runs stdio MCP. Pipe stdin/stdout from your client.

Try it

After you've added the config and restarted your client, ask:

  • "Find me a Next.js SaaS starter under MIT with more than 500 stars."

  • "What's trending in AI agents this week on BuyGit?"

  • "Tell me about next-saas-starter-pro — is the secret scan clean?"

  • "Compare react-saas-template and nextjs-stripe-starter."

  • "Explain the license risk of some-gpl-library for my MIT project."

  • "Run a deep audit on github.com/some-org/some-repo."

The model will call the right tools, attach the canonical BuyGit links, and let you click through.

Configuration

Env var

Default

Purpose

BUYGIT_API_BASE

https://buygit.com

Override for staging / self-hosted mirror

BUYGIT_MCP_TRANSPORT

stdio

stdio (default, all clients) · http (Streamable HTTP)

BUYGIT_TIMEOUT_MS

15000

Per-request timeout in milliseconds. Increase for slow networks.

BUYGIT_EXPLAIN_MODEL

claude-haiku-4-5-20251001

Anthropic model for buygit_explain summaries.

ANTHROPIC_API_KEY

(none)

Required only for buygit_explain. All other tools work without any key.

BUYGIT_COMPANION_TOOL_MAP

(built-in)

JSON override for companion MCP tool names in buygit_deep_audit.

Architecture

┌─────────────────────────────────────────────┐
│  AI Agent (Claude, GPT, Gemini, …)          │
│  ↕ MCP JSON-RPC (stdio or Streamable HTTP)  │
├─────────────────────────────────────────────┤
│  @buygit/mcp-server                         │
│  14 tools · 7 resources · 4 prompts         │
│  Zod input validation · structuredContent   │
│  Retry w/ exponential backoff (429/503)     │
├─────────────────────────────────────────────┤
│  undici Pool → buygit.com REST API          │
│  Public · Read-only · No auth · Free        │
└─────────────────────────────────────────────┘

Privacy & licensing

The BuyGit Open Index API is public, read-only, no auth. There is no key to install. Requests are not personally identifiable (the server doesn't log the queries you make).

The catalog excludes seller-curated listings — only crawler-imported public-repo metadata is exposed. Each result includes a url field linking back to the canonical BuyGit page; please surface that link when redistributing.

This package is MIT licensed. The API responses are licensed for indexing + attribution per the BuyGit API terms.

Develop

cd packages/mcp-server
pnpm install
pnpm build
node dist/index.js   # connects on stdio — feed it MCP JSON-RPC over stdin

Or run the watch build while developing:

pnpm dev

Run tests:

pnpm test           # 57 tests (handler + server + federation)

To smoke-test against the live API:

BUYGIT_API_BASE=https://buygit.com node dist/index.js
# then in another process, send a `tools/list` JSON-RPC frame

Available Tools

14 tools
buygit_audit_repoA

Audit any external GitHub repo (not just BuyGit catalog) — returns license + supply-chain risk + popularity + repo signals in one shot. If the repo is already in our catalog, uses the richer cached signals. Otherwise lives-probes the GitHub REST API. Use for "is github.com/X/Y safe to bundle?" or "what license is github.com/X/Y under?".

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesgithub.com/{owner}/{repo} URL. Strict github.com host enforcement.

Output Schema

ParametersJSON Schema
NameRequiredDescription
sourceYesWhich path satisfied the request — catalog row or live GitHub REST probe.
repo_urlYes
listingNoPresent when source = catalog. Cached BuyGit listing with full signals.
auditNoPresent when source = github-live. Live GitHub REST probe + derived signals.
caveatNoPresent when source = github-live. Explains the live-probe limitations.
companion_mcpsNoRecommended companion MCPs to chain with for deeper checks (Socket, OpenSSF, TruffleHog).

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries the full burden. It details return types (license, supply-chain risk, popularity, repo signals) and explains caching vs live-probing. However, it omits potential rate limits or side effects from GitHub API calls.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is 4 concise sentences with front-loaded purpose. Every sentence adds value: action+results, caching detail, and use cases. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema and single parameter, the description covers core behavior, caching, and usage cases. Missing details on rate limits or authentication, but overall sufficient for an agent to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 100% schema coverage, the description adds significant meaning: it clarifies that the tool works on any external repo (not just catalog) and explains behavioral differences based on catalog membership, which the schema's regex and description do not convey.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: auditing any external GitHub repo for license, supply-chain risk, popularity, and repo signals. It distinguishes itself from siblings by emphasizing external repos and one-shot comprehensive audit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit use cases like 'is github.com/X/Y safe to bundle?' and 'what license is github.com/X/Y under?'. It also explains caching vs live-probing behavior, but does not explicitly mention when to use alternatives like buygit_deep_audit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

buygit_check_license_compatA

Check whether SPDX license A can be bundled into a project licensed under SPDX license B. Returns one of compatible / review / incompatible with a plain-English note. The only MCP that answers "Is GPL-3.0 safe in my MIT project?" without a separate SCA tool. Hint, not legal advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesSPDX id of the dependency you want to use.
targetYesSPDX id of the project you want to bundle it into.

Output Schema

ParametersJSON Schema
NameRequiredDescription
sourceYes
targetYes
verdictYes
noteYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It discloses the output format (compatible/review/incompatible with plain-English note) and a disclaimer. However, it does not explicitly state read-only nature, side effects, or other behavioral traits, which are important for an agent to understand.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded: first sentence states purpose, second describes output, third adds uniqueness and a hint. Every sentence adds value with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (two string inputs) and the existence of an output schema, the description covers the key aspects: purpose, input semantics, output format, and a legal disclaimer. It could mention any edge cases or dependencies, but for typical use it is sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description does not add meaning beyond the schema; it reiterates that inputs are SPDX IDs but does not provide additional context or constraints beyond what the schema already covers.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: checking SPDX license compatibility between two licenses. It specifies the return values (compatible/review/incompatible) and uses an example question to illustrate usage. The mention of being the only MCP without a separate SCA tool distinguishes it from external tools, and sibling tools don't overlap directly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a usage example and a disclaimer ('not legal advice'), but does not explicitly state when to use this tool vs alternatives or when not to use it. It implies it is the go-to tool for license compatibility among MCPs but lacks direct comparison with sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

buygit_compareA

Single-call side-by-side of 2-5 listings: license category, license_warning, popularity score, risk score, pricing, repo signals. Equivalent github-mcp / Smithery workflows need 4+ calls and do not return license compatibility. Pass slugs from prior tool results; unknown slugs come back as not found entries instead of erroring.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
itemsYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must disclose behavioral traits. It reveals graceful handling of unknown slugs (non-error 'not found' entries) and the range of listings compared. It does not mention safety or idempotency, but the read-only nature is implied.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, both front-loaded with critical information: first sentence covers purpose and output fields, second covers usage and error handling. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description does not need to detail return values. It covers purpose, usage, error behavior, and differentiation from siblings, making it complete for a comparison tool with one parameter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter 'slugs' has no schema description (0% coverage). The description adds context by linking slugs to prior tool results and specifying error behavior, which clarifies the parameter's meaning and expected format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Single-call side-by-side of 2-5 listings' with specific fields compared, clearly defining the verb (compare), resource (listings), and scope. It distinguishes from sibling tools by noting that equivalent workflows require 4+ calls and lack license compatibility data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description instructs to pass slugs from prior tool results and explains that unknown slugs return 'not found' entries instead of errors. It contrasts with alternative workflows, but does not explicitly specify when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

buygit_deep_auditA

Federated audit — spawns Socket / OpenSSF / TruffleHog companion MCPs in parallel and combines their findings with our catalog signals. The only MCP that one-shots a multi-vendor supply-chain check (vs. the user installing 4 MCPs and asking each separately). Companion MCPs that are not installed surface as federation_failures[] with operator hints. Soft-fails per-companion — always returns SOMETHING agent-actionable.

ParametersJSON Schema
NameRequiredDescriptionDefault
slug_or_urlYesEither a BuyGit slug (catalog row) or a github.com/{owner}/{repo} URL (live probe). Slug matches `^[a-z0-9-]+$`; URL matches `https?://github.com/owner/repo`.
federate_withNoWhich companion MCPs to chain. Defaults to all three.
timeout_msNoPer-companion hard timeout in milliseconds.

Output Schema

ParametersJSON Schema
NameRequiredDescription
targetYes
buygit_auditYesOur own audit (either catalog row or live GitHub probe).
federation_resultsYes
verdictNoOne-line aggregate (safe / review / risky / unverified).

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must cover behavior. It discloses that companion MCPs are spawned in parallel, soft-fails per companion, and always returns something agent-actionable. It also explains that missing companions surface as federation_failures with hints. Could mention auth or rate limits but is sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a tight paragraph of four sentences, front-loaded with the core purpose. Every sentence adds value, with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity and that an output schema exists, the description covers the main aspects: federated execution, handling of missing companions, and guaranteed actionable output. It could specify the output structure but is acceptable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with good parameter descriptions. The description does not add significant additional meaning beyond the schema for parameters. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool does a federated audit across Socket, OpenSSF, and TruffleHog in parallel, combining their findings with catalog signals. It distinguishes from siblings by emphasizing it is the only MCP that one-shots a multi-vendor supply-chain check, avoiding separate installations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells when to use this tool (for a combined multi-vendor check) and contrasts with alternatives (installing and querying four separate MCPs). It does not explicitly list when not to use it, but the context is clear enough for an agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

buygit_diff_versionsA

Time-window diff for a BuyGit listing — did the license / popularity / risk change between two dates? Answers questions no other MCP can ("did this dep regress since I added it last quarter?"). Returns snapshot-driven deltas when the operator has TRENDING_V2_ENABLED + the snapshot table populated; otherwise returns current state + a gated_on hint so the agent knows what to ask the operator for.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesListing slug from a prior tool call.
fromNoISO 8601 datetime to compare from. Clamped to listing.created_at if earlier.
toNoISO 8601 datetime to compare to. Defaults to now.

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugYes
titleNo
modeYes
fromNo
toNo
deltaNoPresent when mode = snapshot-diff. Stars/forks/popularity deltas across the requested window.
currentYes
gated_onNoOperator action name when historical data unavailable.
noteNo

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully discloses behavior: it returns snapshot-driven deltas when conditions are met, otherwise returns current state with a 'gated_on' hint. This informs the agent about the tool's limitations and expected outputs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences, front-loading the main purpose and then detailing the conditional behavior. No extraneous words; every sentence provides essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (parameter count 3, output schema present), the description covers all critical aspects: the diff operation, conditional behavior based on operator settings, and a hint mechanism. It fully equips an agent to decide when and how to invoke the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All three parameters are described in the input schema with 100% coverage. The description adds value by explaining that 'slug' comes from a prior tool call, 'from' is clamped to listing.created_at, and 'to' defaults to now, which goes beyond the schema's basic descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it performs a time-window diff for a BuyGit listing, checking changes in license, popularity, or risk between two dates. It explicitly claims to answer questions no other MCP can, distinguishing it from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use the tool (to detect regressions over time) and provides clear conditions (requires TRENDING_V2_ENABLED and snapshot table; otherwise returns current state with a hint). This gives an agent concrete guidance on prerequisites and fallback behavior.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

buygit_explainA

AI-summarised explanation of a BuyGit listing (license + risk + how to use). Uses Claude Haiku 4.5 under the hood; gated on the operator's ANTHROPIC_API_KEY (returns a structured error with routing hint when unset). Use after buygit_get_listing when the user wants a plain-English digest instead of raw fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYes
focusNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
summaryNo
focusNo
modelNo
gated_on_envNo

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the underlying model (Claude Haiku 4.5), the API key requirement, and the error behavior when the key is missing. This adds important behavioral context beyond basic read/write safety. A minor gap is no mention of rate limits or response format details, but the output schema likely covers that.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences that are front-loaded with purpose and then provide usage guidance. Every part earns its place; no redundant or vague language.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the moderate complexity (2 params, 1 required, enums, output schema exists), the description covers purpose, usage sequence, prerequisite (API key), and error handling. The output schema likely documents return values, so that gap is acceptable. A small improvement would be adding a brief note on what each focus option does, but overall adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. The description implies the 'slug' parameter (the listing identifier) and the focus areas (license, risk, usage) but does not explicitly describe each parameter or their formats. The focus enum values are hinted but not elaborated. This adds some value but not enough to fully cover the undocumented parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it provides an 'AI-summarised explanation of a BuyGit listing (license + risk + how to use)', specifying a specific verb, resource, and output coverage. It also distinguishes itself from siblings like buygit_get_listing by offering a digest versus raw fields.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Use after buygit_get_listing when the user wants a plain-English digest instead of raw fields', providing clear when-to-use and referencing a specific sibling. It also notes the dependence on ANTHROPIC_API_KEY and the structured error when unset, covering prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

buygit_find_alternativeA

Find license-compatible, risk-scored alternatives to a library or repo — the answer GitHub search cannot give (raw search ranks by stars and lacks license/risk signals). Filter by language and required license (e.g. MIT-only). Use when the user says "what can replace X?", "alternatives to Y", or "the GPL version of Z is blocking me, find an MIT one".

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesLibrary or repo to find alternatives for.
languageNoPrimary language filter (e.g. "TypeScript").
licenseNoSPDX id to restrict alternatives (e.g. MIT to exclude GPL).
limitNoMax results (1-20).

Output Schema

ParametersJSON Schema
NameRequiredDescription
queryYesEchoed query for client-side correlation.
countYes
resultsYes

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states the tool returns 'license-compatible, risk-scored alternatives' and mentions available filters, but it does not explicitly confirm read-only behavior, data freshness, or any limitations. For a tool with no annotations, more explicit 'read-only' or 'no side effects' statements would improve transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise: three sentences that efficiently convey purpose, distinguishing value, and usage triggers. No redundant words, and the most important information (the tool's unique value) appears first.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema (which likely explains return structure), the description provides sufficient context: purpose, comparison to alternatives, and filter parameters. All critical aspects for agent decision-making are covered without needing to add output format details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with descriptions for all four parameters. The description adds value by explicitly mentioning the 'language' and 'license' filters and giving an example ('e.g. MIT to exclude GPL'), which provides context beyond the schema's generic descriptions. The 'query' parameter is also implied as the library/repo to find alternatives for.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action: 'Find license-compatible, risk-scored alternatives to a library or repo.' It differentiates from sibling tools like buygit_search by highlighting that GitHub search lacks license/risk signals, and the tool is distinct from other siblings like buygit_compare (comparison) or buygit_explain (explanation). The verb 'find' and resource 'alternatives' are specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit triggers: 'when the user says "what can replace X?", "alternatives to Y", or "the GPL version of Z is blocking me, find an MIT one".' It explains that this tool fills a gap that GitHub search cannot. However, it does not explicitly state when not to use or what alternatives exist (e.g., for general search use buygit_search), but the context is clear enough.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

buygit_get_listingA

Full detail for one BuyGit listing — replaces 3 separate MCP calls (license + supply-chain risk + popularity in one response). Includes secret-scan status, malware flag, upstream health, repo signals (stars, forks, last commit, language), full description, license classification with compatibility warning, pricing, and up to 5 similar listings. Slug must come from a prior buygit_search / trending / random / compare result.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesListing slug from a previous tool call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugYes
titleYes
urlYes
licenseNo
signalsYes4-axis signals (license, popularity, risk, pricing). The defining BuyGit MCP differentiator — no other MCP returns license + supply-chain risk + popularity + pricing in a single call.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It comprehensively discloses included data: secret-scan status, malware flag, upstream health, repo signals, license compatibility warning, pricing, and similar listings. No destructive behavior mentioned; appears read-only. Could add note about safe repetition.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. First sentence captures purpose and key consolidation benefit. Second sentence lists contents and a critical prerequisite. Highly efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given moderate complexity, presence of output schema, and comprehensive description covering main outputs and usage prerequisite, the description provides sufficient context for correct agent invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline 3. Description adds value by clarifying slug must come from a prior search/trending/random/compare result, which is useful context beyond the schema's basic description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves full details for a BuyGit listing, consolidating three separate calls (license, supply-chain risk, popularity). It lists many specific fields and mentions that the slug must come from prior tools like buygit_search, distinguishing it from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states the slug must come from a prior tool result, providing clear context for when to use. It implies this is for consolidated view, but does not explicitly exclude cases where deeper audit (buygit_audit_repo) or comparison (buygit_compare) would be more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

buygit_list_categoriesA

Full BuyGit Open Index taxonomy with per-category crawler listing counts. Use this to find a category slug for buygit_search, or to discover what is in the catalog. Counts are accurate to the last crawl (typically <24h).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
categoriesYes

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses that counts are accurate to last crawl (typically <24h), but does not explicitly state read-only behavior or other behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, first sentence states what it is, second gives purpose and freshness. Front-loaded and no wasteful content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no parameters and an output schema, the description fully explains the data (taxonomy with counts) and freshness. No missing information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 0 parameters, so description need not explain parameters. Baseline 4 applies; description adds value by explaining what the output contains (categories with counts).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it lists the full BuyGit Open Index taxonomy with per-category counts, and explicitly links to using it for finding a category slug for buygit_search. This distinguishes it from sibling tools like buygit_search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says to use this tool to find category slugs for buygit_search or discover catalog content. Does not explicitly state when not to use, but the use case is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

buygit_randomA

Surface 1-10 random crawler listings, each with license + risk + popularity + pricing signals. Useful for "surprise me", category browsing, or seeding agent suggestions when the user has not specified intent. Optional category slug narrows the pool.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of random picks (1-10).
categoryNoCategory slug to narrow the pool (optional).

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYes
resultsYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description discloses that the tool returns random listings with specific attributes (license, risk, popularity, pricing). It implies read-only behavior and non-deterministic results. Could mention if any mutation or side effects, but likely none.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with purpose and output details, followed by use cases and optional parameter note. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 params, output schema exists), the description adequately covers purpose, parameters, and usage context. No missing critical information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (both parameters described). Description adds context on how parameters are used (count as number of picks, category to narrow pool) but does not provide semantics beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses clear verb 'Surface' and specifies the resource: random crawler listings with concrete signals (license, risk, popularity, pricing). It clearly distinguishes from siblings like search, trending, or get_listing by focusing on randomness and surprise.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use: 'surprise me', category browsing, seeding suggestions when user has no intent. Does not explicitly state when not to use or mention alternatives, but the use cases are well-defined.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

buygit_statsA

BuyGit Open Index meta — total listings, license breakdown, top categories, source providers, last_indexed_at. Useful for "how big is the catalog?", "what license is most common?", or proving the curated catalog size before recommending it.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
total_listingsYes
last_indexed_atNo
by_licenseNo
by_categoryNo
by_sourceNo

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but description discloses that the tool returns aggregated, read-only meta information (no destructive actions). Could mention freshness or caching behavior, but still good.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences: first defines what the tool returns, second gives example use cases. No wasted words, front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless tool with an output schema, the description fully covers what the agent needs to know about the tool's purpose and when to use it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, schema coverage 100%. Description adds context about what the output covers, meeting the baseline of 4 for zero parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool provides meta statistics (total listings, license breakdown, top categories) and is distinct from sibling tools that perform searches or audits.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly gives use cases: 'how big is the catalog?', 'what license is most common?', 'proving the curated catalog size before recommending it.' Implicitly suggests when NOT to use (for specific repo details, use other tools).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_toolsA

Meta tool — given a plain-English intent, returns the most appropriate BuyGit tool(s) to call next, ranked. Implements MCP Tool Search Tool semantics. Saves the agent from listing every tool description when only one will fit the user's ask.

ParametersJSON Schema
NameRequiredDescriptionDefault
intentYesWhat the user wants to do, in plain language.

Output Schema

ParametersJSON Schema
NameRequiredDescription
intentYes
recommendationsYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but the description adds value by explaining it's a meta tool and implements MCP Tool Search Tool semantics. Discloses its purpose and function adequately for a search tool with no side effects implied.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with 'Meta tool,' concise and to the point. Every sentence adds value with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple meta-tool with one parameter and an output schema, the description is complete. It explains what it does, why it's useful, and how it differs from sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with parameter description 'What the user wants to do, in plain language.' The description's mention of 'plain-English intent' reinforces the schema but does not add new details beyond it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it's a meta tool that takes plain-English intent and returns ranked tool suggestions. Distinguishes itself from sibling tools by being a meta-tool that selects among them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says it saves the agent from listing every tool description when one tool fits the ask, providing clear usage context. Does not explicitly state when not to use or alternatives, but the context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 14 tool updatesv0.1.0
    • First observedbuygit_audit_repo
    • First observedbuygit_check_license_compat
    • First observedbuygit_compare
    • First observedbuygit_deep_audit
    • First observedbuygit_diff_versions
    • First observedbuygit_explain
    • First observedbuygit_find_alternative
    • First observedbuygit_get_listing
    • First observedbuygit_list_categories
    • First observedbuygit_random
    • First observedbuygit_search
    • First observedbuygit_stats
    • First observedbuygit_trending
    • First observedsearch_tools

TDQS

A4.4/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose, from auditing to searching to comparing. The 'search_tools' meta-tool further aids disambiguation by directing agents to the right tool.

Naming Consistency4/5

All but one tool follow the 'buygit_' prefix and verb_noun pattern consistently. The exception is 'search_tools', which lacks the prefix, causing a minor inconsistency.

Tool Count5/5

14 tools is well-scoped for the server's purpose of license and risk management. Each tool earns its place, covering auditing, search, comparison, and meta-guidance.

Completeness5/5

The tool set covers a full lifecycle: auditing, license checks, version diffing, alternative finding, search, trending, and random discovery. No obvious gaps for the stated domain.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/genoxdeveloper/buygit-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server