OppenSteward-MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OPPEN_HOST | No | Host interface for HTTP mode. Default is 127.0.0.1. | 127.0.0.1 |
| OPPEN_PORT | No | Local port for HTTP mode. Default is 8766. | 8766 |
| OPPEN_STATE_DIR | No | Directory for runtime state (login token, OAuth DB, logs). Default is .runtime. | .runtime |
| OPPEN_TRANSPORT | No | Transport mode. Use 'stdio' for Secure MCP Tunnel or 'http' for domain forwarding with OAuth. Defaults to 'stdio' for new installations. | stdio |
| OPPEN_TUNNEL_ID | No | Tunnel ID from OpenAI Platform, required when using Secure MCP Tunnel. | |
| OPPEN_PUBLIC_URL | No | Public HTTPS URL used in HTTP + OAuth mode (e.g., https://projects.example.com). Required when using HTTP transport. | |
| OPPEN_SCAN_ROOTS | No | JSON array of directories to scan for projects, e.g., ["~/Projects", "~/Research"]. Defaults to the current user's home directory. | |
| OPPEN_SKILL_ROOT | No | Directory containing the skill folders 'oppen-project-steward' and 'stepwise-r-project'. If not set, common locations like ~/.codex/skills and ~/.agents/skills are tried. | |
| OPPEN_SCAN_SECONDS | No | Max seconds per scan batch. Default is 90. | 90 |
| OPPEN_EXCLUDE_ROOTS | No | JSON array of directories to exclude from scanning, e.g., ["~/Projects/private"]. | |
| OPPEN_MAX_SCAN_DIRS | No | Max directories to scan per batch. Default is 500000. | 500000 |
| OPPEN_SCAN_INTERVAL | No | Seconds between scan cycles; minimum 10. Default is 300. | 300 |
| OPPEN_TUNNEL_CLIENT | No | Full path to the tunnel-client executable if it is not on your PATH. | |
| OPPEN_TUNNEL_PROFILE | No | Profile name used for the tunnel-client. Default is 'oppen-steward'. | oppen-steward |
| CONTROL_PLANE_API_KEY | No | Runtime key from OpenAI Platform for the tunnel, required when using Secure MCP Tunnel. | |
| OPPEN_DISCUSSION_MODE | No | Discussion feature mode: 'off' (default), 'read' to allow reading discussion files, or 'write' to allow reading and creating/editing discussions. | off |
| OPPEN_EXTRA_REDIRECT_URIS | No | JSON array of extra allowed OAuth redirect URIs. Default is []. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_projectsA | List explicitly registered projects, stable IDs, roots and skill versions. No disk scanning. |
| refresh_projectsA | Reload the project list and recheck its exact roots. Never scan or register other projects. |
| project_overviewC | Read the registry, locate indices and report Discussion and Freeze permissions. discussion_mode describes local configuration; discussion_access describes authorization. mcp_tools is the live server list, which may differ from an older client's cached tool list. |
| list_filesA | Browse registry and indexed Memory/Attention paths. Use list_discussions for Discussion. |
| read_fileA | Read an allowlisted governance document in chunks. Offsets/lengths are BYTES. Follow next_offset to EOF; compare size/modified_ns across chunks and restart if changed. Maximum chunk 262144 bytes; base64 preserves exact bytes of allowed governance text. Data, source, results, Audit, README and other canonical bodies are never available. Discussion uses read_discussion and its separate permission; this tool cannot read Discussion. |
| searchA | Search only allowlisted governance documents across projects; returns citation IDs for fetch. Content search covers UTF-8 files up to 256 KiB. Narrow project_id/glob if truncated. |
| fetchB | Fetch a search result by ID. Follow metadata.next_offset to read a long document completely. |
| get_skill_guideB | Read the locally installed SKILL.md for either supported management skill. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 8 tools
Most tools have distinct purposes, but read_file and fetch overlap: both retrieve document content by ID/chunk with offset-based continuation, and the descriptions spend several sentences clarifying boundaries (e.g. fetch is for search results, read_file for governance docs) — a sign of inherent confusion. list_files also partially overlaps with list_projects/project_overview in exposing project structure.
Mixed conventions: three list_* tools, but also project_overview, get_skill_guide, refresh_projects, read_file, fetch, search. Verb_noun holds for list_projects/list_files/get_skill_guide/read_file, while fetch and search are bare verbs and project_overview is noun-only. Readable but not a predictable pattern.
8 tools is well-scoped for a project-governance/registry server; each tool maps to a distinct operation (list, browse, overview, fetch, guide, read, refresh, search) with no filler.
Covers the read-oriented lifecycle: discovery (list_projects, list_files, project_overview), retrieval (search, fetch, read_file), skill guidance, and refresh. The surface is explicitly read-only and mentions separate tools (list_discussions, read_discussion) for Discussion, so gaps are intentional boundaries rather than dead ends.