0137GitHub
Jev Sift
Classify first, read selectively: an agent plugin and MCP tool.
kbhuw/jev-siftREADME ↗
# Jev Sift
**Let Jev decide what your agent should look at next.**
Pass a query and a batch of file paths, public webpage URLs, or text. Jev Sift reads the content, sends it directly to Jev, and returns compact relevance probabilities. Your main agent only opens the items worth a closer look.
Tool descriptions work too: pass a tool's description, arguments, and relevant context as text to judge whether calling it would help. This evaluates the supplied description; it does not execute the tool or predict its unseen result.
## Setup: one Jev API key
Get a key from the [TypeSafe dashboard](https://console.typesafe.ai/settings/keys) and provide it as **`JEV_API_KEY`** in the MCP server's environment. `TYPESAFE_API_KEY` also works.
That's the only required setting. The plugin calls `https://api.typesafe.ai/v1/systemone` with `jev-latest` directly. No endpoint, model picker, browser form, or setup UI.
For desktop hosts that do not inherit your shell environment, the plugin also reads `~/.config/jev-sift/api-key` (a private file containing just the key), or an optional `apiKeyFile` setting. Keep the key out of the repository and restrict the file to owner-only access. The plugin never includes credentials in tool responses. Webpage fetches receive no Jev credentials.
## Use it
Call `classify`:
```json
{
"query": "Find evidence that this company sells software to hospitals",
"items": [
{ "id": "notes", "path": "/absolute/path/to/company-notes.txt" },
{ "id": "website", "url": "https://example.com/about" },
{ "id": "candidate-tool", "text": "Tool: search_companies. Searches company profiles by industry and customer segment. Input: industry, customer_type." }
]
}
```
Use **exactly one** of `text`, `path`, or `url` per item. IDs must be unique. A `que