Løser du Jira-opgaver med Claude Code, kan agenten slå komponenten op direkte i
arbejdsgangen — hvilken Java-version den kører, hvilke migrerings-flag den har, og
hvordan dens biblioteker står i forhold til resten af NSP. Så opdages det at seks andre
komponenter allerede er gået videre, før nogen rører en pom.xml —
uden at man skal huske at åbne denne side.
🔌 Tilslut serveren
Kør kommandoen én gang i en terminal. Den gælder derefter for alle dine projekter.
…
Virker i Claude Code. Andre MCP-klienter (Cursor, VS Code-agenter)
peger blot på samme URL med transport http. Tjek forbindelsen bagefter med
claude mcp list.
📄 Få agenten til at spørge af sig selv
Trin 1 gør opslaget muligt. Dette gør det automatisk: læg teksten i
CLAUDE.md i dit NSP-projekt, så ved agenten hvornår den skal slå op — og
hvordan den skal læse svaret.
## NSP-komponentopslag
Ved opgaver i denne Maven-baserede NSP-komponent: kør `nsp_component_context` FØR
ændringer i `pom.xml`, Java-version, Docker-baseimage eller migreringsbiblioteker
(javax→jakarta, log4j, JAXB, SOAP).
Behandl svaret som observationer, ikke som facit:
- "N komponenter er på en nyere version" betyder at andre NSP-komponenter ligger
højere — ikke at der findes en godkendt målversion.
- Står der et herkomst-mærke (`fra sdm-parent:4.26`), findes versionen IKKE i denne
komponents egen pom. Ret ikke et tal der ikke står der.
- Verificér altid fund mod projektets egen `pom.xml` og byg/test før ændringer.
Angiv i planen hvilke fund der er observationer, og hvilke der er verificeret.
Committer du filen, får hele teamet det samme uden at gøre noget.
🧰 Værktøjer agenten får
| Værktøj | Hvad det svarer på |
|---|---|
nsp_component_context | Java-version, platform-tag, migrerings-flag og alle direkte Maven-afhængigheder holdt op mod resten af NSP. Finder selv komponenten ud fra din git-remote. Kør den ved opgavestart. |
nsp_dependency_status | Ét Maven-koordinat slået op på tværs af alle komponenter: hvilke versioner er i brug, hvem bruger hvad, og hvor kommer versionen fra. Kør den før du ændrer en version. |
nsp_find_component | Find komponenter på navn, forkortelse, repo-slug eller git-remote-URL. Kør den når du skal slå en anden komponent op. |
⚠️ Sådan skal svarene læses
"Nyeste i brug i NSP" er en observation, ikke en anbefaling. Den højeste observerede version kan være et enkeltstående eksperiment i én komponent. Forbeholdene følger med i hvert eneste svar, så agenten ikke kan læse et tal uden sin sammenhæng:
- Kun direkte erklærede Maven-afhængigheder. Transitive afhængigheder kræver at man kører Maven og kan ikke hentes over API — et bibliotek kan være i brug uden at stå her.
- NSP-referencen er den højeste version OBSERVERET i NSP, ikke en godkendt målversion. Den højeste observerede version kan være et enkeltstående eksperiment. Der findes endnu ingen kuraterede målversioner; kommer de, vil de stå som approved_target_version på de biblioteker der har en.
- Felter der ikke siger noget for et givet fund udelades. Fravær betyder 'ikke relevant her', ikke 'ukendt' — status fortæller altid hvad der gælder.
- Nyeste i NSP er ikke det samme som nyeste udgivne version opstrøms; en sikkerhedsopdatering kan ligge højere end alt hvad NSP bruger.
- Versionssammenligning er best-effort sortering af Maven-versioner, ikke Mavens egen algoritme.
- Repos uden pom.xml indgår ikke, og en enkelt version kan være ubestemmelig — den returneres da med navngiven årsag, aldrig som et gæt.
- Data er et øjebliksbillede fra tidspunktet i generated_at; verificér fund mod projektets egen pom.xml før ændringer.
🔗 Uden MCP: almindelige HTTP-kald
Samme data, samme beregning — til agenter uden MCP, til scripts og til fejlsøgning.
Alt er read-only og svarer application/json.
| Endpoint | Indhold |
|---|---|
GET /api/v1/meta | Skemaversion, datatidspunkt og dækning. |
GET /api/v1/components?query=… | Slå komponent op på navn, forkortelse, slug eller git-remote. |
GET /api/v1/components/<slug>/agent-context | Alt om én komponent i ét kald. |
GET /api/v1/components/<slug>/dependencies?status=newer | Kun de afhængigheder hvor andre ligger højere. |
GET /api/v1/libraries/<groupId>/<artifactId> | Hvem bruger biblioteket, i hvilke versioner. |
Kontrakten er versioneret (/api/v1
+ schema_version i hvert svar) og er bevidst adskilt fra /api/data,
som er sidernes interne datakilde og kan ændre sig når som helst. Byg aldrig en
integration på /api/data.