Quesen — Developer Portal

MCP serverAI & models

quesen gives your AI a consistent way to decide what to do next. For every action your agent considers, it returns one of three verdicts: PROCEED, REVIEW, or SKIP. Because the verdicts are deterministic, the same situation always leads to the same decision, so you can trust and re-check your agent's choices.

Use Quesen — Developer Portal in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add Quesen — Developer Portal and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use the quesen.validate tool from Quesen

Details

Available today. Use it from your connected AI after setup.

After adding quesen, point it at the decisions your agent makes so it starts returning a verdict for each action. The source code is available at github.com/shxnque/quesen if you want to see how it works.

Quesen — Developer PortalStart free

What your AI can do with it

  • Sort each action your agent considers into PROCEED, REVIEW, or SKIP
  • Return the same verdict every time the same situation comes up
  • Hold actions for review before they run
  • Let actions go ahead when the verdict is PROCEED
  • Re-check past decisions and get the same answers back

Install Quesen — Developer Portal

The server’s own address, for the clients that take one directly. Or connect Ahel once and every client you use reads it from one address, with the account kept on Ahel rather than in each client’s config.

  • Claude Code

    claude mcp add --transport http --scope user quesen-developer-portal 'https://web-production-3df26.up.railway.app/mcp'

    Run it once in your project, then open /mcp to approve any sign-in the server asks for.

  • Claude Desktop

    https://web-production-3df26.up.railway.app/mcp

    Add a custom connector in Settings, paste this address, and approve the sign-in.

  • Cursor

    cursor://anysphere.cursor-deeplink/mcp/install?name=quesen-developer-portal&config=eyJ1cmwiOiJodHRwczovL3dlYi1wcm9kdWN0aW9uLTNkZjI2LnVwLnJhaWx3YXkuYXBwL21jcCJ9

    Open the link and Cursor adds the server at that address.

  • ChatGPT

    https://web-production-3df26.up.railway.app/mcp

    In Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.

  • Codex

    codex mcp add quesen-developer-portal --url 'https://web-production-3df26.up.railway.app/mcp'

    Run it once, then sign in with codex mcp login quesen-developer-portal if the server asks for an account.

From the project's README

As published by shxnque/quesen in README.md.

Quesen is the deterministic decision-and-receipt core for agent actions — a typed security context in, a PASS / REVIEW / BLOCK / SKIP verdict out, with machine reason codes and a receipt you can re-run byte-for-byte and prove. No model inference is in the scoring path, so the same input always yields the same verdict. It is built to sit behind injection detection, on top of agent identity, and to bill per decision (ASP/402).

Unlike log-based governance layers whose audit trail is their word, kept by them, a Quesen receipt is independently verifiable by the caller — recomputable, and (engine signing enabled) Ed25519-signed. See docs/architecture-gap-closers.md and client-side enforcement + receipt verification in quesen-sdk ≥ 0.5.0. Production engine signing is live — verify a real signed receipt yourself in docs/verify-live-receipt.md (no trust in Senueren required).

This repository is the public developer portal. It contains only documentation, integration guides, examples, registry manifests, and reference links. No engine source code lives here. Quesen's engine implementation is sovereign, non-public infrastructure.

Live production

SurfaceURL
REST APIhttps://web-production-3df26.up.railway.app
MCP (Streamable HTTP)https://web-production-3df26.up.railway.app/mcp
OpenAPI 3.1https://web-production-3df26.up.railway.app/openapi.json
Swagger UIhttps://web-production-3df26.up.railway.app/docs
Healthhttps://web-production-3df26.up.railway.app/health
Versionhttps://web-production-3df26.up.railway.app/version

Quick start (30 seconds)

Fastest path — no install, no signup, no card. Self-serve a free sandbox key and run a real deterministic decision against production. Full guide: docs/QUICKSTART.md · try it in the browser at senueren.co.za/try.

# 1 · get a free sandbox key
curl -X POST https://web-production-3df26.up.railway.app/sandbox/keys

# 2 · evaluate an action (use the api_key from step 1)
curl -X POST https://web-production-3df26.up.railway.app/validate \
  -H "X-API-Key: sk_sandbox_..." \
  -H "Content-Type: application/json" \
  -d '{"domain_age_days": 1, "engagement_ratio": 0.95, "scam_keyword_count": 4}'
# -> {"decision":"SKIP","risk_score":1.0,"conflict_triggers":[...],"input_snapshot_hash":"..."}

SDKs

Published. The SDKs are live on PyPI and npm (quesen-sdk 0.5.0 / npm 0.5.0; quesen-langchain, quesen-crewai, quesen-autogen 0.3.0). The base_url + X-API-Key (including the sandbox key above) are identical across all SDKs.

Python

pip install quesen-sdk   # PyPI: https://pypi.org/project/quesen-sdk/
from quesen_sdk import QuesenClient

q = QuesenClient(base_url="https://web-production-3df26.up.railway.app",
                 api_key="YOUR_KEY")   # a sandbox key from /sandbox/keys works here

verdict = q.validate(domain_age_days=1, engagement_ratio=0.95, scam_keyword_count=4)
if verdict.decision == "SKIP":
    return  # respect the deterministic answer

JavaScript / TypeScript

npm i quesen-sdk   # npm: https://www.npmjs.com/package/quesen-sdk
import { QuesenClient } from "quesen-sdk";

const q = new QuesenClient({
  baseUrl: "https://web-production-3df26.up.railway.app",
  apiKey: process.env.QUESEN_API_KEY,
});

const verdict = await q.validate({
  domain_age_days: 1,
  engagement_ratio: 0.95,
  scam_keyword_count: 4,
});

Framework wrappers

FrameworkPackageRepository
LangChain / LangGraphquesen-langchainShxnque/quesen-langchain
CrewAIquesen-crewaiShxnque/quesen-crewai
AutoGen v0.4+quesen-autogenShxnque/quesen-autogen
Python (core)quesen-sdkShxnque/quesen-sdk-py
JavaScript / TypeScriptquesen-sdk (npm)Shxnque/quesen-sdk-js

MCP (Claude Desktop, Cursor, Windsurf, etc.)

Quesen exposes five MCP tools over the production endpoint. See docs/mcp.md for the client-config snippet.


Why Quesen?

Autonomous agents make more decisions per second than any human oversight can audit. When those decisions involve capital — launching a token, opening a position, executing a trade, greenlighting a smart-contract deployment — the marginal cost of a bad decision is fatal.

Quesen answers exactly one question:

Should the calling agent proceed with this action?

Inputs are typed. Outputs are one of PROCEED, REVIEW, SKIP, always with a risk_score in [0.0, 1.0], a confidence in [0.0, 1.0], and the exact conflict rules that fired. Same inputs → same output. Every time. Every response embeds engine_version, weights, and thresholds. Fully reproducible. Fully auditable.

What Quesen is not

  • Not an LLM wrapper. No prompts. No probabilities.
  • Not a chatbot. It is A2A infrastructure.
  • Not a KYC/identity system. It scores risk, not identity.
  • Not chain-locked / framework-locked / LLM-locked. Ecosystem-neutral by design.

Documentation

Independent verification

Published receipts are independently reproducible from this repo alone — no hosted service or private engine required:

python3 verify/verify_receipts.py          # offline, stdlib-only
python3 verify/verify_receipts.py --live   # also cross-check the live engine

All six UCP #724 vectors show a byte-for-byte three-way match between the published fixture, the public reference, and the live engine (verify/README.md, verify/three_way_match.json). That doc also states honestly where independent verification stops today (the production ruleset commit_sha is not publicly resolvable; receipts are not yet cryptographically issuer-signed).

The egress/authority decision subset — the part security integrators gate on — is now independently verdict-replayable offline too, with zero network:

python3 evaluation/conformance/verify_conformance.py   # offline; recomputes decision+reasons+hash

Six cases (OWASP-agentic + LoopX prepared-Effect PASS/REVIEW/BLOCK) recompute byte-for-byte from the public reference evaluator, plus a prod-1→prod-2 integrity-flip check — no signup, key, or hosted call (evaluation/conformance/README.md).

Tutorials


Live status

  • Production: https://web-production-3df26.up.railway.app
  • Health check: GET /health returns {"status":"ok","engine_version":"1.10.0"}
  • Version snapshot: GET /version returns full engine + billing + on-chain flags (ASP/1.0)
  • Uptime and version widget on senueren.co.za/quesen

Registry presence

Quesen is discoverable via Model Context Protocol registries and the standard agent-directory ecosystem. See docs/registries.md for the current state of each submission. Manifests:


Contributing

This is a documentation-only repository. Engine PRs cannot be accepted here. If you have integration-specific feedback, please open an issue or read CONTRIBUTING.md.

SDK contributions belong in the corresponding public SDK repository:

Security issues: please read SECURITY.md before filing publicly.


Community

Follow build updates, agent-governance notes, and Quesen releases on X: @SenuerenGroup · web: senueren.co.za · senueren.co.za/quesen.

If a Quesen integration or a merged contribution helped your project, a follow or a note at @SenuerenGroup is always appreciated.


License

MIT. See LICENSE.

Tools it offers (5)

What this server listed when Ahel dialed its public endpoint in Oct 2026, with no key and no account of yours. The names are the server’s own.

  • quesen.validate
  • quesen.simulate
  • quesen.report
  • quesen.health
  • quesen.version

Signals

GitHub stars
2
Last commit
Oct 2026
Advanced
Delivery
quesen MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
Item type
mcp-server
Key
io-github-shxnque-quesen
Source
github.com/shxnque/quesen
Hosted endpoint
https://web-production-3df26.up.railway.app/mcp