{"openapi":"3.0.3","info":{"title":"Gnist Context — Stortinget (Norwegian Parliament)","description":"Norwegian Parliament data — representatives, committees, cases/bills, votes, and topic taxonomy.\n\n- **MCP endpoint:** `https://context.gnist.ai/mcp/stortinget/`\n- **Toolkit page:** `/toolkits/stortinget`\n- **Full API spec:** `/api/openapi.json`\n- **Get an API key:** `/signup`","version":"1.0.0","contact":{"name":"GnistAI","url":"https://gnist.ai"}},"servers":[{"url":"https://context.gnist.ai","description":"Production"}],"paths":{"/rest/stortinget/list_sessions":{"post":{"tags":["Government"],"summary":"list_sessions","description":"List all parliamentary sessions in the Norwegian Storting.\n\nReturns sessions from 1986-87 to the current session, each identified by\na session ID like '2024-2025'. Use the session ID with other tools\n(get_cases, list_committees) to query data within a specific session.\n\nReturns:\n    Dict with 'count' and 'sessions' list. Each session has id, from, to dates.","operationId":"stortinget_list_sessions","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}]}},"/rest/stortinget/get_current_representatives":{"post":{"tags":["Government"],"summary":"get_current_representatives","description":"Get all current members of the Norwegian Parliament (Stortinget).\n\nReturns the full list of sitting representatives, including their party,\ncounty, committee assignments, and contact information.\n\nReturns:\n    Dict with 'count' and 'representatives' list. Each has id, name, party,\n    county, committees, email, gender, and date_of_birth.","operationId":"stortinget_get_current_representatives","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}]}},"/rest/stortinget/get_representatives":{"post":{"tags":["Government"],"summary":"get_representatives","description":"Get representatives for a specific parliamentary period.\n\nParliamentary periods span four years (e.g. '2021-2025', '2017-2021').\nUse list_sessions to find valid period IDs.\n\nArgs:\n    period_id: Parliamentary period (e.g. '2021-2025').\n\nReturns:\n    Dict with 'count' and 'representatives' list.","operationId":"stortinget_get_representatives","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"period_id":{"description":"Parliamentary period (e.g. '2021-2025').","type":"string"}},"required":["period_id"],"type":"object"}}}}}},"/rest/stortinget/list_parties":{"post":{"tags":["Government"],"summary":"list_parties","description":"List political parties in the Norwegian Parliament.\n\nWithout a session_id, returns all parties (historical and current).\nWith a session_id, returns only parties represented in that session.\n\nArgs:\n    session_id: Optional session (e.g. '2024-2025'). Omit for all parties.\n\nReturns:\n    Dict with 'count' and 'parties' list. Each has id and name.","operationId":"stortinget_list_parties","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Optional session (e.g. '2024-2025'). Omit for all parties."}},"type":"object"}}}}}},"/rest/stortinget/list_committees":{"post":{"tags":["Government"],"summary":"list_committees","description":"List parliamentary committees for a given session.\n\nCommittees handle specific policy areas: finance, justice, health, energy, etc.\nEach session typically has 15-18 standing committees.\n\nArgs:\n    session_id: Parliamentary session (e.g. '2024-2025').\n\nReturns:\n    Dict with 'count' and 'committees' list. Each has id and name.","operationId":"stortinget_list_committees","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"session_id":{"description":"Parliamentary session (e.g. '2024-2025').","type":"string"}},"required":["session_id"],"type":"object"}}}}}},"/rest/stortinget/get_cases":{"post":{"tags":["Government"],"summary":"get_cases","description":"Get all cases (bills, propositions, questions) for a parliamentary session.\n\nReturns all cases processed during the session, including their committee\nassignment, topics, and status. Use the case ID with get_case for full\ndetails or get_votes for voting results.\n\nArgs:\n    session_id: Parliamentary session (e.g. '2024-2025').\n\nReturns:\n    Dict with 'count' and 'cases' list. Each has id, title, committee,\n    topics, and status.","operationId":"stortinget_get_cases","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"session_id":{"description":"Parliamentary session (e.g. '2024-2025').","type":"string"}},"required":["session_id"],"type":"object"}}}}}},"/rest/stortinget/get_case":{"post":{"tags":["Government"],"summary":"get_case","description":"Get detailed information about a specific parliamentary case.\n\nReturns full case details including proposers, rapporteurs, committee,\ntopics, and reference information.\n\nArgs:\n    case_id: Numeric case ID (e.g. 103839).\n\nReturns:\n    Full case details with proposers, rapporteurs, topics, and committee info.","operationId":"stortinget_get_case","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"case_id":{"description":"Numeric case ID (e.g. 103839).","type":"integer"}},"required":["case_id"],"type":"object"}}}}}},"/rest/stortinget/get_votes":{"post":{"tags":["Government"],"summary":"get_votes","description":"Get voting results for a parliamentary case.\n\nReturns all votes taken on the case, including for/against counts,\nwhether it passed, and the specific motion being voted on.\n\nArgs:\n    case_id: Numeric case ID (e.g. 103839).\n\nReturns:\n    Dict with 'count' and 'votes' list. Each vote has for/against/absent\n    counts, passed status, and the motion topic.","operationId":"stortinget_get_votes","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"case_id":{"description":"Numeric case ID (e.g. 103839).","type":"integer"}},"required":["case_id"],"type":"object"}}}}}},"/rest/stortinget/list_topics":{"post":{"tags":["Government"],"summary":"list_topics","description":"List the parliamentary topic taxonomy.\n\nReturns the two-level hierarchy of policy topics used to classify cases.\nMain topics include areas like Energy, Finance, Defense, Education, Health.\nEach main topic has subtopics for more specific classification.\n\nReturns:\n    Dict with 'count' and 'topics' list. Each has id, name, is_main_topic,\n    and a subtopics list.","operationId":"stortinget_list_topics","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}]}},"/rest/stortinget/report_feedback":{"post":{"tags":["Government"],"summary":"report_feedback","description":"Report a bug, feature request, or general feedback for this data source.\n\nUse this when something doesn't work as expected, when you'd like\na new feature, or when you have suggestions for improvement.\n\nArgs:\n    feedback: Describe the issue or suggestion.\n    feedback_type: One of 'bug', 'feature_request', or 'general'.","operationId":"stortinget_report_feedback","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"feedback":{"type":"string"},"feedback_type":{"default":"general","type":"string"}},"required":["feedback"],"type":"object"}}}}}}},"tags":[{"name":"Government","description":"Data sources: Government"}],"components":{"securitySchemes":{"ApiKeyHeader":{"type":"apiKey","in":"header","name":"gnist-api-key","description":"API key passed via request header."},"ApiKeyQuery":{"type":"apiKey","in":"query","name":"gnist_api_key","description":"API key passed via query parameter."}}}}