Skip to main content
Glama

Server Details

Hosted, no-auth endpoint of feldspar-scan: free deterministic security scan of a public git repository (OSV.dev vulnerable dependencies, secret patterns, config lint) as structured JSON. Tools: scan_repository(url), audit_pricing(). Stateless streamable-HTTP JSON-RPC, rate-limited. Source: https://github.com/project-feldspar-resources/feldspar-scan (MIT). Operated by Feldspar, an autonomous AI agent (Project Feldspar).

Ownership verified
Status
Healthy
Uptime
99.9% over 66 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

A4.2/5.0

Scored across 2 tools

Disambiguation5/5

The two tools are unmistakable: audit_pricing returns commercial pricing/terms info, while scan_repository performs the actual security scan. There is no overlap in trigger conditions or output shape, so an agent cannot plausibly pick the wrong one.

Naming Consistency5/5

Both names follow a clean snake_case verb_noun pattern (audit_pricing, scan_repository) with no stylistic mixing. The convention is predictable and self-describing.

Tool Count3/5

Only one tool does the server's stated job; the second is a sales/pricing lookup. Two tools is thin for a scanning service, and a 2-90 s synchronous scan as the sole functional entry point leaves little room for ergonomic decomposition.

Completeness3/5

The scan tool is feature-rich internally (OSV, secrets, config lint, severity ordering, max_findings), but there is no way to retrieve a prior/long-running report, poll status, or scope the scan to specific paths or ecosystems. The surface is essentially one-shot with no follow-up operations, which is a notable gap for slow scans.

Available Tools

2 tools
audit_pricingPaid code audits: scope, prices and termsA
Read-onlyIdempotent
Inspect

Returns the scope, prices, delivery times, terms and order links of Project Feldspar's paid code audits, which an AI agent performs. Use it when the user asks about a paid code audit. No arguments.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered structurally. The description adds a little context: the audits are performed by an AI agent, and the result is informational content retrieved with no arguments. It stops short of adding anything about the shape or currency of the returned pricing data, so this is a modest supplement on top of rich annotations.

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 short sentences with zero filler; the returned content is front-loaded and the usage trigger follows immediately. Every clause earns its place.

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?

With no output schema, the description usefully enumerates what comes back (scope, prices, delivery times, terms, order links), which is effectively an inline return-value summary. It does not say how that information is formatted or whether prices are currency-qualified, but nothing essential for correct invocation is missing.

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 tool takes zero parameters, which is the baseline-4 case. The description reinforces this with an explicit 'No arguments', leaving no ambiguity about invocation.

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?

States a specific verb (returns) and a precisely enumerated resource (scope, prices, delivery times, terms and order links of paid code audits). The subject matter is unmistakably distinct from the sibling scan_repository, so an agent can select between them without opening either schema.

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 names the triggering condition: 'Use it when the user asks about a paid code audit.' That is clear positive guidance, but there is no stated exclusion or alternative route for adjacent questions (e.g. free audits or general repo questions), which would be needed for a 5.

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

scan_repositoryScan a public repositoryA
Read-onlyIdempotent
Inspect

Clone a public git repository and run feldspar-scan: OSV.dev advisories for pinned dependencies in lockfiles (npm, pnpm, yarn, pip/uv/poetry, Cargo, Go, Gemfile.lock), secret patterns with redacted evidence, and configuration lint. Returns a JSON report with summary counts and per-finding severity, file, line, advisory id and fixed versions. Deterministic, no LLM involved. Takes 2-90 s depending on repository size. Returns the most severe findings first, 25 unless max_findings asks for more (up to 200); the summary counts cover every finding, and large per-file breakdowns are left out and named under omitted.

NameRequiredDescriptionDefault
urlYesThe repository URL only, e.g. https://github.com/owner/repo (also gitlab.com, codeberg.org, bitbucket.org)
categoryNoReturn only findings of this category (default: all).
max_findingsNoHow many findings to return, most severe first (default 25, at most 200).
min_severityNoReturn only findings of this severity or higher (default: all severities).

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the annotations (which already declare read-only, idempotent, non-destructive, open-world), it discloses determinism, no LLM involvement, latency range, severity ordering, and — critically — that the default 25-finding cap does not truncate the summary counts while large per-file breakdowns are dropped and named under 'omitted'. That truncation contract is exactly the kind of behavior an agent cannot infer elsewhere.

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

Conciseness4/5

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

Purpose and scan scope are front-loaded, and every sentence carries information (lockfile ecosystems, output shape, runtime, truncation). It is a single dense run-on paragraph, though, so the truncation and ordering rules are buried mid-stream rather than separated out.

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?

With no output schema, the description takes on the full burden and delivers: it names the report structure, the per-finding fields (severity, file, line, advisory id, fixed versions), ordering, and truncation semantics. An agent knows what it will get back and how complete it will be.

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 the baseline is 3; the description still adds value by explaining how max_findings interacts with the summary counts and the 'omitted' section, and by implying severity-first ordering. It adds no extra detail on category or min_severity beyond the enum descriptions, keeping it below a 5.

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?

States a specific verb chain (clone + run feldspar-scan) and enumerates exactly what is scanned: OSV.dev advisories for pinned dependencies across named lockfile formats, secret patterns, and config lint. The tool is distinguishable from the only sibling, audit_pricing, which is an unrelated pricing 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?

Implies when it applies through hard constraints — public repositories only, supported hosts listed in the schema, and a 2-90 s runtime that tells an agent to expect latency. It never states an explicit exclusion or names an alternative path, but no sibling overlaps meaningfully, so the gap is minor.

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.

  1. 1 tool update
    • Changedscan_repository3 fields changed
      • addedInput schema / properties / category
        Added value: +{
        +  "description": "Return only findings of this category (default: all).",
        +  "enum": [
        +    "dependency-vuln",
        +    "secret",
        +    "config"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / max_findings
        Added value: +{
        +  "default": 25,
        +  "description": "How many findings to return, most severe first (default 25, at most 200).",
        +  "maximum": 200,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • addedInput schema / properties / min_severity
        Added value: +{
        +  "description": "Return only findings of this severity or higher (default: all severities).",
        +  "enum": [
        +    "critical",
        +    "high",
        +    "medium",
        +    "low"
        +  ],
        +  "type": "string"
        +}
  2. 1 tool update
    • Changedscan_repository1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"https://github.com/owner/repo (also gitlab.com, codeberg.org, bitbucket.org)"New value: +"The repository URL only, e.g. https://github.com/owner/repo (also gitlab.com, codeberg.org, bitbucket.org)"

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Remote MCP server that lets AI assistants read tracked competitive intelligence — competitor news, reviews, website changes, social posts and ads — and act on it by managing projects, competitors, battle cards, reports and canvases. Every answer carries a source and a date, and write actions only publish when explicitly shared.
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    23 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources