systemone-decision-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SYSTEMONE_MODEL | No | Model id used by the decision endpoint. Without this, the server still runs using the rule-based engine. | |
| SYSTEMONE_API_KEY | No | Bearer token for the OpenAI-style decision endpoint. Without this, the server still runs using the rule-based engine. | |
| SYSTEMONE_ENDPOINT | No | URL of the OpenAI-style decision endpoint, for example https://your-host/v1/your-route. Without this, the server still runs using the rule-based engine. | |
| SYSTEMONE_NO_DOTENV | No | Set to 1 to disable loading .env entirely. | |
| SYSTEMONE_TIMEOUT_MS | No | Request timeout in milliseconds. Raise this value if requests time out. | |
| SYSTEMONE_REQUIRED_AT | No | Score cutoff at or above which a recommendation is marked as required. | 0.93 |
| SYSTEMONE_MAX_QUESTIONS | No | Maximum number of questions used in the second stage. Lower this value to shrink the second stage and reduce timeouts. | |
| SYSTEMONE_DEFAULT_THRESHOLD | No | Default score threshold used when deciding whether a tool is recommended. | 0.80 |
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| systemone_decide_toolsA | Analyse a user task and recommend the most appropriate available MCP tools, with scores, priority tiers, and deterministic reasons. Call this before complex or multi-step tasks. Returns no recommendations when the task needs no external tool. |
| systemone_recommend_skillsA | Rank the skills discovered on disk against a task and return the ones worth loading, with their SKILL.md path and a reason. Only metadata is read, never the skill body. The agent still loads the skill itself. |
| systemone_analyze_taskA | Classify what a task requires (current information, documentation, repository access, files, computation, database, browser, literature) before deciding on tools. Cheap single-question-batch call. |
| systemone_check_tool_needB | Score a single tool against a task and say whether it clears its threshold. Use when the agent is unsure whether one specific MCP tool is worth calling. |
| systemone_audit_executionA | Compare the tools this server recommended with the tools the agent reports having executed. Returns utilisation, missed recommendations, and unexpected tools. This server cannot observe other MCP servers, so the execution list must be supplied. |
| systemone_evaluate_resultC | Report objective tool-usage metrics alongside explicit limitations. Task success is only reported when the user supplied an outcome; tool calls alone are never treated as proof of success. |
| systemone_get_catalogA | Return the tool catalog with resolved availability, the discovered skill index, and the OpenCode configuration sources that were read. Useful for explaining why a tool was not recommended. |
| systemone_refresh_catalogA | Re-read OpenCode MCP configuration, the tool catalog, settings, and the skill index. Never writes to OpenCode configuration and never overwrites user-written catalog metadata. |
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 clearly distinct purposes, but decide_tools, analyze_task, and check_tool_need all sit in the task-to-tool decision space and could require a moment to distinguish. The descriptions do clarify their scopes, keeping the overlap manageable rather than confusing.
Every tool uses the same systemone_ prefix followed by a snake_case verb_noun pattern. Names such as decide_tools, recommend_skills, analyze_task, and refresh_catalog are predictable and consistent.
Eight tools is well scoped for a decision/recommendation server, and each tool earns its place. There is no obvious filler or missing core operation from a count perspective.
The surface covers task analysis, tool and skill recommendation, single-tool checking, execution auditing, result evaluation, and catalog inspection/refresh. Minor gaps exist around managing settings or thresholds directly, but the key lifecycle is covered and intentional limitations are documented.