hypruse
Local package path declaredNo credentials listedRepository declared by sourceUpdated 2026-10-08
io.github.IlyasKhallouki/hypruse · Registry status: active
At a glance
Computer use for Hyprland: semantic desktop state over IPC, plus vision and native input
Vendor's own description, untranslated and unverified
- Execution location
- Local package path declaredMCP-Register · 2026-08-06
- Required secrets declared
- No credentials listedMCP-Register · 2026-08-06
- Declared version and change
0.12.0· Source-reported change date 2026-10-08MCP-Register · 2026-10-09- Repository as declared
- github.com/IlyasKhallouki/hypruseMCP-Register · 2026-08-06
- Configuration
- can be built from the disclosed start template
Inspect connection paths and prerequisites
Related categories
- MCP servers without declared required secrets36,126
- Locally executed MCP servers17,143
- MCP servers with a repository URL30,309
- Local MCP servers without declared required secrets13,303
- Local MCP servers with a repository URL16,232
- MCP servers over stdio only13,770
6 of 10 categories. All categories in the segment catalogue
Page last changed:
Sources and collection
- Runs
- Local package path declared
- Credentials
- No credentials listed
- Registry record changed
- 2026-10-08
- Setup
- Template available
- Registry name
io.github.IlyasKhallouki/hypruse- Package coordinate
pypi:hypruse- Declared version
0.12.0- Source-reported listing date
- 2026-10-08
- Source-reported change date
- 2026-10-08
- First seen by tracevero
- 2026-08-06
- Vendor's website
- https://github.com/IlyasKhallouki/hypruse#readme
Evidence for this page: The values on this page come from several collections. Each row therefore states its own origin. What the confidence levels mean
Measured values
| Required secrets declared | No credentials listed no Original data – Required secret variables (raw): confirmed absent Original data – Required secret headers (raw): confirmed absent Source: MCP-Register · collected on 2026-08-06 · derived |
|---|---|
| Execution location | Local package path declared local Original data – Transports (raw): stdio Source: MCP-Register · collected on 2026-08-06 · derived |
| Path argument present | no Original data – Path arguments (raw): confirmed absent Original data – Path environment variables (raw): confirmed absent Source: MCP-Register · collected on 2026-08-06 · derived |
| Repository URL listed | Repository declared by source yes Original data – Repository (raw): https://github.com/IlyasKhallouki/hypruse Source: MCP-Register · collected on 2026-08-06 · derived |
| Declared version | 0.12.0 Source: MCP-Register · collected on 2026-10-09 · self-declared |
What is measured is what a manifest declares, not what a piece of software does. This registry fetches no repository URL, no endpoint and no package index; nothing here is verified. Which value comes from which source, and by which rule it was formed, is set out in the Methodology.
Source data25
Evidence for this page: The values on this page come from several collections. Each row therefore states its own origin.
| Description (raw) | Computer use for Hyprland: semantic desktop state over IPC, plus vision and native input Source: MCP-Register · collected on 2026-08-26 · self-declared |
|---|---|
| Environment variables (raw) | HYPRUSE_SCREENSHOT_MODE, HYPRUSE_READONLY, HYPRUSE_CONFINE, HYPRUSE_AUTH_GUARD, HYPRUSE_STRICT, HYPRUSE_MARK, HYPRUSE_CLIPBOARD, HYPRUSE_JOURNAL, HYPRUSE_JOURNAL_MAX_BYTES, HYPRUSE_JOURNAL_TEXT, HYPRUSE_DRYRUN Source: MCP-Register · collected on 2026-09-01 · self-declared |
| Required secret variables (raw) | confirmed absent Source: MCP-Register · collected on 2026-08-06 · self-declared |
| Transports (raw) | stdio Source: MCP-Register · collected on 2026-08-06 · self-declared |
| Path arguments (raw) | confirmed absent Source: MCP-Register · collected on 2026-08-06 · self-declared |
| Repository (raw) | https://github.com/IlyasKhallouki/hypruse Source: MCP-Register · collected on 2026-08-06 · self-declared |
| Package registries (raw) | pypi Source: MCP-Register · collected on 2026-08-06 · self-declared |
| Required secret headers (raw) | confirmed absent Source: MCP-Register · collected on 2026-08-16 · self-declared |
| Path environment variables (raw) | confirmed absent Source: MCP-Register · collected on 2026-08-16 · self-declared |
| Remote URLs (raw) | confirmed absent Source: MCP-Register · collected on 2026-08-16 · self-declared |
| Remote hosts (raw) | confirmed absent Source: MCP-Register · collected on 2026-08-16 · self-declared |
| Registry status message (raw) | confirmed absent Source: MCP-Register · collected on 2026-08-16 · self-declared |
| First listed in the registry (raw) | 2026-10-08 Source: MCP-Register · collected on 2026-10-09 · self-declared |
| Last changed in the registry (raw) | 2026-10-08 Source: MCP-Register · collected on 2026-10-09 · self-declared |
| Schema version of the raw record (raw) | https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json Source: MCP-Register · collected on 2026-08-16 · self-declared |
| Delivery form (raw) | package Source: MCP-Register · collected on 2026-08-16 · self-declared |
| Repository platform (raw) | github Source: MCP-Register · collected on 2026-08-16 · self-declared |
| Repository subfolder (raw) | confirmed absent Source: MCP-Register · collected on 2026-08-16 · self-declared |
| Package identifiers (raw) | hypruse Source: MCP-Register · collected on 2026-08-16 · self-declared |
| Package versions (raw) | 0.12.0 Source: MCP-Register · collected on 2026-10-09 · self-declared |
| Runtime hints (raw) | uvx Source: MCP-Register · collected on 2026-08-16 · self-declared |
| Environment variable formats (raw) | confirmed absent Source: MCP-Register · collected on 2026-08-16 · self-declared |
| Environment variable descriptions (raw) | HYPRUSE_AUTH_GUARD=Refuse to click or type into system authentication dialogs (polkit, keyring prompts). On by default; 'strict' also refuses password fields in ordinary windows; 0 disables it. · HYPRUSE_CLIPBOARD=Set to 1 to register the opt-in clipboard tool (never in read-only mode). Off by default because clipboards hold passwords. · HYPRUSE_CONFINE=Restrict input to a scope of windows and refuse everything outside it: 'launched' (only windows hypruse opened this session), 'class:firefox,kitty', or 'workspace:3,special:notes'. Unset means no confinement. · HYPRUSE_DRYRUN=Set to 1 for a rehearsal: every acting tool validates its arguments and runs every trust guard, then reports what it would have done and delivers no input. · HYPRUSE_JOURNAL=Record every tool call, refusals included, as one NDJSON line: 1 writes to XDG_STATE_HOME/hypruse/journal.ndjson, or give a path. Read it back with 'hypruse journal'. Off by default. · HYPRUSE_JOURNAL_MAX_BYTES=Rotate the journal once it reaches this size, keeping one previous generation alongside it. Set 0 to never rotate. · HYPRUSE_JOURNAL_TEXT=Set to 1 to record typed and copied text in the journal verbatim instead of as a length plus digest. Off by default because keystrokes are passwords; needed only to replay typing. · HYPRUSE_MARK=Set to 1 to make the agent's presence legible: tag every window it opens 'hypruse-owned' and flash an on-screen notice when it opens a window or captures the screen. · HYPRUSE_READONLY=Set to 1 to expose only the observation tools (desktop, screenshot, zoom, ui, marks, binds, wait_for). The agent can see and narrate but cannot click, type, or launch. · HYPRUSE_SCREENSHOT_MODE=How captures are returned: 'file' writes to XDG_RUNTIME_DIR and returns the path, 'image' returns the image inline. Use 'image' for clients that render MCP images but cannot read files, such as Claude Desktop. · HYPRUSE_STRICT=Set to 1 to refuse to act when the cursor or focused window moved since hypruse's last action, so the agent must re-read the desktop before retrying. Source: MCP-Register · collected on 2026-09-01 · self-declared |
| Icon formats (raw) | confirmed absent Source: MCP-Register · collected on 2026-08-16 · self-declared |
| Connection paths (source structure) | {"packages":[{"registryType":"pypi","identifier":"hypruse","version":"0.12.0","runtimeHint":"uvx","transport":"stdio","environment":[{"name":"HYPRUSE_SCREENSHOT_MODE","description":"How captures are returned: 'file' writes to XDG_RUNTIME_DIR and returns the path, 'image' returns the image inline. Use 'image' for clients that render MCP images but cannot read files, such as Claude Desktop.","required":false,"secret":false},{"name":"HYPRUSE_READONLY","description":"Set to 1 to expose only the observation tools (desktop, screenshot, zoom, ui, marks, binds, wait_for). The agent can see and narrate but cannot click, type, or launch.","required":false,"secret":false},{"name":"HYPRUSE_CONFINE","description":"Restrict input to a scope of windows and refuse everything outside it: 'launched' (only windows hypruse opened this session), 'class:firefox,kitty', or 'workspace:3,special:notes'. Unset means no confinement.","required":false,"secret":false},{"name":"HYPRUSE_AUTH_GUARD","description":"Refuse to click or type into system authentication dialogs (polkit, keyring prompts). On by default; 'strict' also refuses password fields in ordinary windows; 0 disables it.","required":false,"secret":false},{"name":"HYPRUSE_STRICT","description":"Set to 1 to refuse to act when the cursor or focused window moved since hypruse's last action, so the agent must re-read the desktop before retrying.","required":false,"secret":false},{"name":"HYPRUSE_MARK","description":"Set to 1 to make the agent's presence legible: tag every window it opens 'hypruse-owned' and flash an on-screen notice when it opens a window or captures the screen.","required":false,"secret":false},{"name":"HYPRUSE_CLIPBOARD","description":"Set to 1 to register the opt-in clipboard tool (never in read-only mode). Off by default because clipboards hold passwords.","required":false,"secret":false},{"name":"HYPRUSE_JOURNAL","description":"Record every tool call, refusals included, as one NDJSON line: 1 writes to XDG_STATE_HOME/hypruse/journal.ndjson, or give a path. Read it back with 'hypruse journal'. Off by default.","required":false,"secret":false},{"name":"HYPRUSE_JOURNAL_MAX_BYTES","description":"Rotate the journal once it reaches this size, keeping one previous generation alongside it. Set 0 to never rotate.","required":false,"secret":false},{"name":"HYPRUSE_JOURNAL_TEXT","description":"Set to 1 to record typed and copied text in the journal verbatim instead of as a length plus digest. Off by default because keystrokes are passwords; needed only to replay typing.","required":false,"secret":false},{"name":"HYPRUSE_DRYRUN","description":"Set to 1 for a rehearsal: every acting tool validates its arguments and runs every trust guard, then reports what it would have done and delivers no input.","required":false,"secret":false}],"additional_arguments_declared":false}],"remotes":[]} Source: MCP-Register · collected on 2026-10-09 · self-declared |
Embed this badge
Paste this line into a README of your own. The badge states how many values the registry holds for the entry and when it last looked, and it links back to this page.
[](https://tracevero.com/mcp/io-github-ilyaskhallouki-hypruse)
The image is drawn again on every request, so it always reports the current state while the pasted line stays as it is. It carries no rating and no traffic light – only the two measured figures.
Changes
| 2026-10-09 | Declared version: 0.11.0 → 0.12.0 |
|---|---|
| 2026-10-09 | Last changed in the registry (raw): 2026-09-13 → 2026-10-08 |
| 2026-10-09 | First listed in the registry (raw): 2026-09-13 → 2026-10-08 |
These are the 3 most recent changes to this entry. Full history
tracevero · https://tracevero.com/mcp/io-github-ilyaskhallouki-hypruse