{"openapi":"3.0.3","info":{"title":"Gnist Context — Resolver","description":"Cross-server entity resolution — resolve names to canonical identifiers across all data servers.\n\n- **MCP endpoint:** `https://context.gnist.ai/mcp/resolver/`\n- **Toolkit page:** `/toolkits/resolver`\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/resolver/resolve_entity":{"post":{"tags":["Platform"],"summary":"resolve_entity","description":"Resolve an entity name to canonical identifiers across all relevant Gnist Context servers.\n\nGiven a name and type, queries multiple upstream servers in parallel and returns\na unified identity card with native identifiers per source. Results are cached\nfor 24 hours.\n\nArgs:\n    name: Entity name to resolve.\n          Examples: \"Equinor\", \"Albert Einstein\", \"Norway\", \"machine learning\"\n    entity_type: Type of entity. One of: company, person, country, research_topic.\n    hints: Optional dict of hints to narrow resolution.\n           For company: {\"country\": \"NO\"} to include Norwegian registry (Brreg).\n           For country: {\"code\": \"NO\"} to query economic databases by code.\n\nReturns:\n    Identity card with:\n    - canonical_name: Best-match canonical name\n    - entity_type: The resolved type\n    - identifiers: Dict keyed by source (brreg, gleif, wikidata, etc.),\n      each containing the source's native identifiers\n    - sources_ok / sources_failed: Resolution success counts\n    - cached: Whether result came from cache","operationId":"resolver_resolve_entity","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":{"name":{"description":"Entity name to resolve.","type":"string"},"entity_type":{"type":"string"},"hints":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}],"default":null}},"required":["name","entity_type"],"type":"object"}}}}}},"/rest/resolver/list_entity_types":{"post":{"tags":["Platform"],"summary":"list_entity_types","description":"List all entity types available for resolution.\n\nReturns the type name, description, and which upstream resolvers are\nconfigured for each type.\n\nReturns:\n    Dict with count and entity_types list.","operationId":"resolver_list_entity_types","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/resolver/resolver_cache_stats":{"post":{"tags":["Platform"],"summary":"resolver_cache_stats","description":"Return statistics about the entity resolution cache.\n\nReturns:\n    Dict with entries, valid, expired, max_size, and ttl_seconds.","operationId":"resolver_resolver_cache_stats","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/resolver/report_feedback":{"post":{"tags":["Platform"],"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":"resolver_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":"Platform","description":"Data sources: Platform"}],"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."}}}}