Plures
Human in the loop for AI agents: ask ID verified people to check a decision before acting.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
plures-mcpclaude mcp add plures -e 'PLURES_API_KEY=<your plures_api_key>' -e 'PLURES_BASE_URL=<PLURES_BASE_URL>' -- npx -y plures-mcp@1.1.0
{
"mcpServers": {
"plures": {
"command": "npx",
"args": [
"-y",
"plures-mcp@1.1.0"
],
"env": {
"PLURES_API_KEY": "<your plures_api_key>",
"PLURES_BASE_URL": "<PLURES_BASE_URL>"
}
}
}
}
Environment variables
PLURES_API_KEYrequired secret Your Plures API key. A free pk_test_ key works for trying it.PLURES_BASE_URLAPI base URL, defaults to https://plures.si
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Plures
Human judgment as an API for AI agents. Plures sends a decision your agent isn't sure about to ID verified people. Several answer independently, each confirmed with Face ID, and your agent gets their consensus back before it acts.
Use it as the human in the loop (HITL) step for the calls where a wrong answer costs money or trust: reading a customer's tone, approving a refund, checking an invoice against its order, catching a listing that doesn't match its photo, moderating an edge case.
| Package | Install | For |
|---|---|---|
plures (npm) | npm install plures | TypeScript and JavaScript: Node 18+, Bun, Deno, edge |
plures (PyPI) | pip install plures | Python 3.8+, no dependencies |
plures-mcp (npm) | npx -y plures-mcp | Claude, Cursor, VS Code and any MCP client or agent |
Get a free test key at plures.si. Test keys answer instantly without reaching real people, so you can build the whole flow first.
Quickstart
import { Plures } from "plures";
const plures = new Plures(); // reads PLURES_API_KEY
const task = await plures.verify({
question: "Is this customer upset?",
context: "Ordered a birthday cake. It came a day late and smashed. Amazing service, really.",
options: ["Yes", "No"],
verifiers: 3,
});
if (task.result?.agreement === 1) {
// Everyone agreed: act on task.result.answer
} else {
// People were split or it expired: route to your own team
}
from plures import Plures
plures = Plures() # reads PLURES_API_KEY
task = plures.verify("Is this customer upset?", ["Yes", "No"],
context="It came a day late and smashed. Amazing service, really.")
print(task["result"]["answer"], task["result"]["agreement"])
In production, pass webhook_url instead of waiting, and check each delivery with verifyWebhook (JavaScript) or verify_webhook (Python).
Give any agent a human check with MCP
{
"mcpServers": {
"plures": {
"command": "npx",
"args": ["-y", "plures-mcp"],
"env": { "PLURES_API_KEY": "pk_test_..." }
}
}
}
Your agent gets an ask_humans tool. Setup for Claude Desktop, Claude Code, Cursor and VS Code is in examples/mcp-clients.
Examples
- LangGraph: a refund graph that acts only when verifiers agree and escalates otherwise
- OpenAI Agents SDK: an
ask_verified_humansfunction tool - Vercel AI SDK: an
askHumanstool forgenerateTextandstreamText - MCP clients: Claude Desktop, Claude Code, Cursor, VS Code
How it works
- Your agent sends a question, the options, and the material to judge.
- Plures shows it to several ID verified people (3 by default, up to 9). Each answers alone, and every answer is confirmed with Face ID, a fingerprint or a passkey.
- If they split, Plures asks more people until there's a majority or your limit.
- You get the answer, how strongly people agreed (
agreement, 0 to 1) and the votes, by webhook or by polling.
Every verifier passes a one time government ID and selfie check and is scored continuously on hidden tasks with known answers. Verifiers never see your metadata.
Links
- API docs and OpenAPI spec
- Use cases
- Ways to add human review to AI agents, compared
- hello@plures.si
MIT licensed.
Frequently asked questions
What is Plures?
Human in the loop for AI agents: ask ID verified people to check a decision before acting.
How do I install Plures?
It runs on your machine. In Claude Code: claude mcp add plures -e 'PLURES_API_KEY=<your plures_api_key>' -e 'PLURES_BASE_URL=<PLURES_BASE_URL>' -- npx -y plures-mcp@1.1.0. For other clients, paste the JSON configuration from this page into their MCP settings.
Does Plures need an API key?
Yes. It expects PLURES_API_KEY, which you set in its configuration.
Is Plures open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains Plures?
It is published by plureslabs. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.