Server data from the Official MCP Registry
Freshness gate for AI agents: verify a belief is still true against the live world before you act.
Freshness gate for AI agents: verify a belief is still true against the live world before you act.
Valid MCP server (7 strong, 3 medium validity signals). 2 code issues detected. No known CVEs in dependencies. ⚠️ Package registry links to a different repository than scanned source. Imported from the Official MCP Registry. 3 finding(s) downgraded by scanner intelligence.
17 files analyzed · 3 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Set these up before or after installing:
Environment variable: KAVAL_API_KEY
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-lufemc-kaval": {
"env": {
"KAVAL_API_KEY": "your-kaval-api-key-here"
},
"args": [
"-y",
"@usekaval/mcp"
],
"command": "npx"
}
}
}From the project's GitHub README.
Open-source client libraries for Kaval — the freshness gate for AI agents. Before your agent acts on a belief it already holds (a cached fact, a stored field, a retrieved RAG chunk, a prior answer), Kaval independently re-derives the truth from the live world and returns a typed, abstaining verdict your agent can branch on.
These are thin HTTP clients for the hosted Kaval API (https://api.usekaval.com). Create an API
key at usekaval.com.
| Package | Language | Install | Source |
|---|---|---|---|
@usekaval/kaval | Node / TypeScript | npm i @usekaval/kaval | sdks/node |
kaval | Python | pip install kaval | sdks/python |
@usekaval/mcp | MCP server | npx -y @usekaval/mcp | packages/mcp |
import { Kaval } from "@usekaval/kaval";
const kaval = new Kaval({ apiKey: process.env.KAVAL_API_KEY });
const { act, status, reason } = await kaval.verify({
belief: "Acme is on our Enterprise plan",
url: "https://billing.acme.com/account",
held_at: "2026-03-01T00:00:00Z",
});
if (!act) {
// status ∈ stale | contradicted | unsupported | insufficient — re-research before acting.
}
from kaval import KavalClient
kaval = KavalClient(api_key=os.environ["KAVAL_API_KEY"])
decision = kaval.verify(belief="Acme is on our Enterprise plan")
if not decision["act"]:
... # re-research before acting
KAVAL_API_KEY=kv_live_… npx -y @usekaval/mcp
Exposes currentness_verify (the pre-action gate) plus currentness_check, …_extract_and_check,
…_scan_store, …_monitor, and report_outcome over stdio. See packages/mcp.
Two names exist on purpose — they are not interchangeable:
| Consumer | Variable | Reads env? |
|---|---|---|
| Python SDK / MCP | KAVAL_BASE_URL | yes |
Node @usekaval/kaval | — | pass baseUrl in constructor |
Marketing site proxy (apps/web) | KAVAL_API_URL | yes (server only) |
Use the same origin value in both vars when self-hosting (e.g. http://localhost:8787). See
SELFHOST.md in the core repo.
pnpm install
pnpm check # build + lint + typecheck + test (the JS packages)
# Python SDK
cd sdks/python && pip install -e ".[dev]" && pytest
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.