Data source: Sjøfartsdirektoratet (Norwegian Maritime Authority)
https://context.gnist.ai/mcp/skipsregisteret/
AuthenticationAll requests require a Gnist-API-Key header (or api_key query parameter).
Free tier: 100 calls/day. Get your API key.
Tools (4)
search_vesselsSearch Norwegian ship registers (NIS and NOR) for vessels.
NIS (Norwegian International Ship Register) covers ships in international trade.
NOR (Norwegian Ordinary Ship Register) covers ships in domestic and short-sea trade.
Returns matching vessels with name, call sign, IMO number, registration status,
and owner information. Use get_vessel_details with the vessel_id for full details
including technical specifications, construction data, and document history.
| Parameter | Type | Required | Description |
|---|---|---|---|
text | string | required | Search text — vessel name, call sign, or IMO number (e.g. "VIKING VISION", "LNXF", "8907034"). |
language | string | optional | Response language: 'en' (English) or 'no' (Norwegian). Default: 'en'. (default: "en") |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "search_vessels",
"arguments": {
"text": "123456789"
}
}
}get_vessel_detailsGet full details for a Norwegian-registered vessel.
Combines vessel registration data and technical specifications into a single
response. Includes ownership, home port, construction info, bareboat status,
document history, and technical specs (dimensions, tonnage, vessel type,
build material, propulsion, and classification society).
Use search_vessels first to find the vessel_id.
| Parameter | Type | Required | Description |
|---|---|---|---|
vessel_id | integer | required | Vessel ID from search results (e.g. 30054). A positive integer. |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "get_vessel_details",
"arguments": {
"vessel_id": 1
}
}
}search_reserved_namesCheck reserved vessel names in Norwegian ship registers (NIS/NOR).
Reserved names are vessel names that have been claimed but may not yet be
in active use. Useful for checking name availability before registering a vessel.
Returns matching reserved names with their register (NIS or NOR).
| Parameter | Type | Required | Description |
|---|---|---|---|
text | string | required | Search text for reserved vessel names (e.g. "VIKING", "POLARIS"). |
language | string | optional | Response language: 'en' (English) or 'no' (Norwegian). Default: 'en'. (default: "en") |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "search_reserved_names",
"arguments": {
"text": "example"
}
}
}report_feedbackReport a bug, feature request, or general feedback for this data source.
Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.
Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.
| Parameter | Type | Required | Description |
|---|---|---|---|
feedback | string | required | |
feedback_type | string | optional | (default: "general") |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "report_feedback",
"arguments": {
"feedback": "example"
}
}
}Quick Start
curl -X POST "https://context.gnist.ai/mcp/skipsregisteret/" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "Gnist-API-Key: YOUR_API_KEY" \
-d '{"jsonrpc": "2.0", "method": "tools/call", "id": 1, "params": {"name": "search_vessels", "arguments": {"text": "example"}}}'
import httpx
resp = httpx.post(
"https://context.gnist.ai/mcp/skipsregisteret/",
headers={"Gnist-API-Key": "YOUR_API_KEY", "Content-Type": "application/json"},
json={
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "search_vessels",
"arguments": {
"text": "example"
}
}
},
)
print(resp.json())