github Python re-analysis due

malkreide/i14y-mcp

github

MCP server for the I14Y interoperability platform — Switzerland's national metadata catalogue

maintainer
malkreide
license
MIT
first seen
2026-07-21
last seen
2026-08-25
releases · 30d
3
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 13 tools
transport stdio · streamable-http · http · sse verified reported listed in the official MCP registry counts 13 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • api_status
  • get_concept
  • get_data_service
  • get_dataset
  • get_dataset_distributions
  • list_catalogs
  • list_concepts
  • list_data_services
  • list_datasets
  • list_public_services
  • list_publishers
  • search_catalog
  • search_codelist_entries
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit c4c11f0 · analyzer v33 · 1w ago

skills & prompt files 1

code evidence vv0.3.2 · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 20

filesystem 10

  • fs (weak) malkreide-i14y-mcp-c4c11f0/scripts/check_ruff_pin.py :35 import shutil
  • fs (weak) malkreide-i14y-mcp-c4c11f0/scripts/check_version_sync.py :49 from pathlib import Path
  • fs (weak) malkreide-i14y-mcp-c4c11f0/scripts/classify_live_run.py :55 from pathlib import Path
  • fs (weak) malkreide-i14y-mcp-c4c11f0/scripts/record_fixtures.py :26 from pathlib import Path
  • fs (weak) malkreide-i14y-mcp-c4c11f0/tests/fixture_data.py :18 from pathlib import Path
  • fs (weak) malkreide-i14y-mcp-c4c11f0/tests/test_classify_live_run.py :21 from pathlib import Path
  • fs (weak) malkreide-i14y-mcp-c4c11f0/tests/test_recorded_fixtures.py :245 from pathlib import Path
  • fs (weak) malkreide-i14y-mcp-c4c11f0/tests/test_tools.py :246 from pathlib import Path
  • fs (weak) malkreide-i14y-mcp-c4c11f0/tests/test_user_agent.py :20 from pathlib import Path
  • fs (weak) malkreide-i14y-mcp-c4c11f0/tests/test_werkzeug_versionen.py :23 import pathlib

shell / exec 1

  • shell (weak) malkreide-i14y-mcp-c4c11f0/scripts/check_ruff_pin.py :36 import subprocess

network 5

  • net (weak) malkreide-i14y-mcp-c4c11f0/scripts/record_fixtures.py :28 from urllib.parse import urlencode
  • net malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/client.py :18 from urllib.parse import urlsplit
  • net (weak) malkreide-i14y-mcp-c4c11f0/tests/test_client.py :10 import httpx
  • net (weak) malkreide-i14y-mcp-c4c11f0/tests/test_recorded_fixtures.py :19 import httpx
  • net (weak) malkreide-i14y-mcp-c4c11f0/tests/test_tools.py :5 import httpx

tool registrations 13

  • search_catalog malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/server.py :132
  • list_datasets malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/server.py :206
  • get_dataset malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/server.py :251
  • get_dataset_distributions malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/server.py :274
  • list_data_services malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/server.py :306
  • get_data_service malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/server.py :349
  • list_public_services malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/server.py :366
  • list_concepts malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/server.py :409
  • get_concept malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/server.py :451
  • search_codelist_entries malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/server.py :468
  • list_publishers malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/server.py :513
  • list_catalogs malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/server.py :557
  • api_status malkreide-i14y-mcp-c4c11f0/src/i14y_mcp/server.py :589

declared dependencies 8

  • mcp@>=2.0.0,<3
  • httpx@>=0.27
  • pydantic@>=2.7
  • structlog@>=24.1,<27
  • pytest@>=8.0
  • pytest-asyncio@>=0.23
  • respx@>=0.21
  • ruff@==0.16.1