Data source: domstol.no (Norwegian Courts Administration)
Overview
domstol.no (Norwegian Courts) wraps domstol.no (Norwegian Courts Administration), handling authentication, pagination, and rate limits for you. This tutorial covers all 3 tools with working code examples you can copy and run.
Prerequisites
- Sign up at https://context.gnist.ai/signup for a free API key (100 calls/day).
- Choose your integration method: MCP protocol or REST API.
Connect via MCP
Add to your MCP client config (Claude Desktop, Cursor, etc.):
{
"mcpServers": {
"gnist-domstol": {
"url": "https://context.gnist.ai/mcp/domstol/",
"headers": {
"Gnist-API-Key": "YOUR_API_KEY"
}
}
}
}
Tools (3)
search_hearings
Search Norwegian court hearing schedules (berammingslister). Query upcoming and recent court hearings across all Norwegian courts. Both date_from and date_to are required. Results include case details, judges, attorneys, and hearing intervals. Args: date_from: Start date (ISO format, e.g. '2026-03-17'). date_to: End date (ISO format, e.g. '2026-03-24'). query: Optional free-text search (e.g. court name, case subject). page: Page number (1-indexed, default 1). page_size: Results per page (1-100, default 25). sort_by: Sort field: 'rettsmoeteDato' (hearing date) or 'rettsmoete'. sort_ascending: Sort direction (default true = earliest first). Returns: Dict with 'total' count, 'page', 'page_size', and 'hearings' list. Each hearing has: id, court, case_number, subject, start_date, end_date, judge, attorneys, parties, hearing_intervals.
| Parameter | Type | Required | Description |
|---|---|---|---|
date_from | string | required | Start date (ISO format, e.g. '2026-03-17'). |
date_to | string | required | End date (ISO format, e.g. '2026-03-24'). |
query | any | optional | Optional free-text search (e.g. court name, case subject). |
page | integer | optional | Page number (1-indexed, default 1). (default: 1) |
page_size | integer | optional | Results per page (1-100, default 25). (default: 25) |
sort_by | string | optional | Sort field: 'rettsmoeteDato' (hearing date) or 'rettsmoete'. (default: rettsmoeteDato) |
sort_ascending | boolean | optional | Sort direction (default true = earliest first). (default: True) |
curl -X POST "https://context.gnist.ai/mcp/domstol/" \
-H "Content-Type: application/json" \
-H "Gnist-API-Key: YOUR_API_KEY" \
-d '{"jsonrpc": "2.0", "method": "tools/call", "id": 1, "params": {"name": "search_hearings", "arguments": {"date_from": "'2026-03-17'", "date_to": "'2026-03-24'"}}}'
import httpx
resp = httpx.post(
"https://context.gnist.ai/mcp/domstol/",
headers={"Gnist-API-Key": "YOUR_API_KEY"},
json={'id': 1,
'jsonrpc': '2.0',
'method': 'tools/call',
'params': {'arguments': {'date_from': "'2026-03-17'",
'date_to': "'2026-03-24'"},
'name': 'search_hearings'}},
)
print(resp.json())
list_courts
List all known Norwegian courts. Returns the full list of courts (tingretter, lagmannsretter, jordskifteretter, and Høyesterett) whose hearings appear in domstol.no schedules. Returns: Dict with 'count' and 'courts' list. Each court has a 'name' field.
curl -X POST "https://context.gnist.ai/mcp/domstol/" \
-H "Content-Type: application/json" \
-H "Gnist-API-Key: YOUR_API_KEY" \
-d '{"jsonrpc": "2.0", "method": "tools/call", "id": 1, "params": {"name": "list_courts", "arguments": {}}}'
import httpx
resp = httpx.post(
"https://context.gnist.ai/mcp/domstol/",
headers={"Gnist-API-Key": "YOUR_API_KEY"},
json={'id': 1,
'jsonrpc': '2.0',
'method': 'tools/call',
'params': {'arguments': {}, 'name': 'list_courts'}},
)
print(resp.json())
report_feedback
Report 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) |
curl -X POST "https://context.gnist.ai/mcp/domstol/" \
-H "Content-Type: application/json" \
-H "Gnist-API-Key: YOUR_API_KEY" \
-d '{"jsonrpc": "2.0", "method": "tools/call", "id": 1, "params": {"name": "report_feedback", "arguments": {"feedback": "example"}}}'
import httpx
resp = httpx.post(
"https://context.gnist.ai/mcp/domstol/",
headers={"Gnist-API-Key": "YOUR_API_KEY"},
json={'id': 1,
'jsonrpc': '2.0',
'method': 'tools/call',
'params': {'arguments': {'feedback': 'example'}, 'name': 'report_feedback'}},
)
print(resp.json())
Common Patterns
Several tools support
limit, offset, or page parameters. Start with small limits during development, then increase for production queries.Use date range parameters to narrow results to a specific time window. Dates are typically in
YYYY-MM-DD format.FAQ
What data does domstol.no (Norwegian Courts) provide?
Norwegian court hearing schedules — search upcoming and recent hearings across all courts. It exposes 3 tools: search_hearings, list_courts, report_feedback.
What do I need to get started?
A Gnist API key (free tier: 100 calls/day). Sign up at https://context.gnist.ai/signup.
What format does the domstol.no (Norwegian Courts) API return?
JSON, via either MCP protocol (JSON-RPC 2.0) or REST API.