Skip to main content
The Vrin MCP server exposes two tools that work as a pair: one to start a query, one to wait for the result.

vrin_query_async

Start a query against the Vrin knowledge base. Returns immediately with a job_id that the client must poll with vrin_check_job.

Input

Output

On success:
On failure (e.g. bad API key):

Behavior

  • The tool writes a job record to DynamoDB and invokes a worker Lambda asynchronously. It returns within ~200ms.
  • The job_id is a UUID. Keep it — you’ll need it for vrin_check_job.
  • Jobs expire one hour after creation.

vrin_check_job

Wait for a running query to complete. Long-polls internally for up to 55 seconds per call. Most queries complete inside the first call.

Input

Output — status: "completed"

The exact fields in result depend on the mode passed to vrin_query_async. context mode returns structured facts for an agent to synthesize; chat mode returns a finished prose summary.

Output — status: "working"

When you see working, call vrin_check_job again with the same job_id. Most queries finish on the first or second call.

Output — status: "failed"

Do not retry the same job_id on failure — start a new query with vrin_query_async.

Output — status: "not_found"


Canonical polling pattern

There’s no time.sleep in that loop. vrin_check_job long-polls internally; calling it back-to-back is correct.

Resources

In addition to the two tools, the server exposes two MCP resources that clients can read without a tool call.

vrin://stats

Returns knowledge-base statistics for the authenticated user:

vrin://config

Returns server configuration:
For vrin_ent_* keys, api_key_type is "enterprise" and infrastructure reflects the customer’s configured deployment.