Gliner2 Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Gliner2 Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
MCP server that exposes GLiNER2 entity extraction, classification, and JSON extraction as tools.
uv syncuv run gliner2-mcpThis server is configured via environment variables (optionally loaded from .env).
| Variable | Default | Description |
|---|---|---|
GLINER2_MODEL_ID | fastino/gliner2-base-v1 | GLiNER2 model id or path. |
GLINER2_DEVICE | empty | Device override passed to from_pretrained when supported. |
GLINER2_MAX_TEXT_LENGTH | 0 | Maximum input length. 0 disables the limit. |
GLINER2_MCP_LOG_LEVEL | INFO | Log level for server logging. |
GLINER2_MCP_ENV_FILE | empty | Path to an env file to load before reading the variables above. |
If GLINER2_MCP_ENV_FILE is not set, the server will load .env from the working directory when it exists.
extract_entities(labels, text=None, filename=None) returns a mapping of label to entity spans.classify_text(schema, text=None, filename=None) returns a mapping of field name to chosen label or list of labels.extract_json(schema, text=None, filename=None) returns a JSON object that matches the provided schema.For all tools, provide exactly one of text or filename:
text: inline input text.filename: UTF-8 text file path relative to the current working directory. Absolute paths and paths resolving outside the current working directory are rejected.Legacy camelCase aliases are still available for compatibility: extractEntities, classifyText, extractJson.
GLiNER2 family models on Hugging Face
uv sync --dev
uv run ruff check .Run the default test suite (unit + contract tests):
uv sync --extra dev
uv run --extra dev pytest -qRun real-model integration tests (downloads/loads actual GLiNER2 weights):
GLINER2_MCP_RUN_INTEGRATION=1 uv run --extra dev pytest -q -m integrationRecommended pre-release check:
uv run --extra dev pytest -q
GLINER2_MCP_RUN_INTEGRATION=1 uv run --extra dev pytest -q -m integrationMIT. See LICENSE.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.