GnistAI GnistAI
Log in

Resolver

Cross-server entity resolution — resolve names to canonical identifiers across all data servers.

Overview   |   MCP   |   REST API   |   OpenAPI   |   CLI   |   Tutorial   |   Toolkits   |   Home
status: healthy status status healthy healthy tools: 4 tools tools 4 4 type: composite report type type composite report composite report lifecycle: hidden lifecycle lifecycle hidden hidden Platform

Data source: Internal registry

MCP Endpoint (Streamable HTTP) https://context.gnist.ai/mcp/resolver/
Authentication

All requests require a Gnist-API-Key header (or api_key query parameter).

Free tier: 100 calls/day. Get your API key.

Tools (4)

resolve_entity

Resolve an entity name to canonical identifiers across all relevant Gnist Context servers.

Given a name and type, queries multiple upstream servers in parallel and returns
a unified identity card with native identifiers per source. Results are cached
for 24 hours.

Args:
name: Entity name to resolve.
Examples: "Equinor", "Albert Einstein", "Norway", "machine learning"
entity_type: Type of entity. One of: company, person, country, research_topic.
hints: Optional dict of hints to narrow resolution.
For company: {"country": "NO"} to include Norwegian registry (Brreg).
For country: {"code": "NO"} to query economic databases by code.

Returns:
Identity card with:
- canonical_name: Best-match canonical name
- entity_type: The resolved type
- identifiers: Dict keyed by source (brreg, gleif, wikidata, etc.),
each containing the source's native identifiers
- sources_ok / sources_failed: Resolution success counts
- cached: Whether result came from cache

ParameterTypeRequiredDescription
namestringrequiredEntity name to resolve.
entity_typestringrequired
hintsanyoptional
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "resolve_entity",
    "arguments": {
      "name": "example",
      "entity_type": "example"
    }
  }
}
list_entity_types

List all entity types available for resolution.

Returns the type name, description, and which upstream resolvers are
configured for each type.

Returns:
Dict with count and entity_types list.

JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "list_entity_types",
    "arguments": {}
  }
}
resolver_cache_stats

Return statistics about the entity resolution cache.

Returns:
Dict with entries, valid, expired, max_size, and ttl_seconds.

JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "resolver_cache_stats",
    "arguments": {}
  }
}
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'.

ParameterTypeRequiredDescription
feedbackstringrequired
feedback_typestringoptional (default: "general")
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "report_feedback",
    "arguments": {
      "feedback": "example"
    }
  }
}

Quick Start

Shell
curl -X POST "https://context.gnist.ai/mcp/resolver/" \
  -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": "resolve_entity", "arguments": {"name": "example", "entity_type": "example"}}}'
Python
import httpx

resp = httpx.post(
    "https://context.gnist.ai/mcp/resolver/",
    headers={"Gnist-API-Key": "YOUR_API_KEY", "Content-Type": "application/json"},
    json={
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "resolve_entity",
    "arguments": {
      "name": "example",
      "entity_type": "example"
    }
  }
},
)
print(resp.json())

Related Toolkits (Platform)

Resources