Skip to content

jev-mcp-dispatcher

Proof-of-concept MCP tool dispatcher that routes a natural-language command and extracts arguments using only Jev Choice and Noul.

MCP serverprototype

Overview

jev-mcp-dispatcher is a proof of concept for MCP tool dispatch with no general-purpose LLM anywhere in the pipeline. Given a simple MCP server whose tools take primitive-typed parameters, it discovers tool signatures at runtime and uses Jev to route a plain-language command to the right tool and fill its arguments.

Tool selection is a Choice over every tool's name and description. Enum parameters are also a Choice. For other parameters, Jev answers one Noul per word asking whether that word belongs to the parameter's value, all in a single parallel request, and the yes words form the value. Values are always exact substrings of the command, never paraphrased. Jev also decides how many independent actions a command describes and whether a number is spelled out. The dispatcher hardcodes no tool or parameter names, and the README documents the scope limits on what commands and registries it can handle.

What the decision model decides

TypeQuestionAnswers
ChoiceWhich tool does this command call?—
ChoiceWhich enum value does this parameter take?—
Yes / noDoes this word belong to this parameter's value?yes · no

How it works

  1. Discover tool signatures from the MCP server with list_tools
  2. Jev picks the tool as a Choice with a confidence
  3. For each parameter, pick enum values or highlight words with per-word Noul questions
  4. Assemble arguments as exact substrings and call the tool

Strengths

  • No free-text generation, so arguments cannot be hallucinated
  • Every step returns an inspectable probability
  • Generic: no hardcoded tool or parameter names

Caveats

  • Proof of concept limited to tools with primitive-typed parameters
  • Scope and caveats section lists input shapes it cannot handle
  • Requires a TypeSafe API key

At a glance

Type
MCP server
Status
prototype
Language
Python
Runtime
Script / MCP client
Has code
yes

Use cases and integrations

How curated lists describe it

Frequently asked questions

How does it extract arguments without generating text?

It asks Jev a yes/no question per word about whether the word belongs to a parameter's value, and keeps the yes words as an exact substring.

Does it work with any MCP server?

No. It targets simple servers whose tools take primitive-typed parameters; the README lists the conditions.

Does it use an LLM at all?

No. Every decision is a Jev Choice or Noul question.

Related projects

  • Rust CLI that ranks which agent skills fit the next step from live session context with Jev, can abstain, and hooks into Claude Code.

    CLIbetaRust
  • Open-source Jev skills for Claude Code, Codex, Cursor and Grok: one client to gate, route, guard, verify, triage, review and act.

    ProjectbetaTypeScript
  • Local gateway and MCP tools that let Jev predict which tool a coding agent should call next, from suggestions to enforced choices.

    MCP serverbetaTypeScript
  • Fourteen opt-in Claude Code and Codex skills where Jev makes one bounded choice: which skill, model, test, file or next step.

    ProjectbetaPython
  • Toolkit where Jev condenses large MCP responses for Claude Code and maps Codex requests to reviewed, fixed repository operations.

    ProjectbetaTypeScript
  • OmO/senpi agent plugin where Jev or Span-01 rates which skills and next tools fit the task and spots loops or completion.

    Agent skillbetaTypeScript