Skip to main content
Glama
chrishargreaves

SOLVE-IT Workflow MCP Server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MCP_APP_SOLVEIT_DATA_PATHYesRoot of the SOLVE-IT clone (the folder containing data/techniques). Without it, only workflow_status works.
SOLVEIT_WORKFLOWS_READ_DIRSNoExtra directories workflow files may be read from, separated by ':' (';' on Windows). The output directory is always readable.~/Downloads
SOLVEIT_WORKFLOWS_OUTPUT_DIRNoWhere workflow files are written.~/Documents/SOLVE-IT Workflows

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

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
workflow_statusA

Report whether the server is ready: knowledge base, output and read directories, limits.

workflow_find_techniquesA

Find SOLVE-IT technique IDs (DFT-...), best matches first.

Searches names, synonyms, descriptions, details and example tools. Techniques matching every word come first (matched_all_words), then those matching most. Each match gives the ID, name, parent technique (for a sub-technique), a short description, and its CASE input and output classes, which is usually enough to choose techniques and order them without looking each one up.

workflow_createA

Create a new SOLVE-IT workflow, write it to a JSON file and return the file path and, when it fits, a share link for the Workflow Builder (https://workflows.hargs.co.uk).

Nodes are given with your own keys; edges, selections and zone members refer to those keys, and the result maps each key to the node ID the server assigned. A sub-technique ID can be given directly as a technique: it is stored as its parent technique with the sub-technique as a method. Zones take the keys of their member nodes and are drawn around them. Use decision or fork nodes for branches out of a step. Use workflow_find_techniques to look up DFT IDs.

Layout is computed: direction "down" (the default, as the builder draws) or "right" (left to right, for example for slides). The workflow is checked against the SOLVE-IT knowledge base first; if there are errors nothing is written and the errors are returned. Warnings are returned with the result.

If a link is returned, give it to the user exactly as returned, in full: changing even one character breaks it. The file path, or open_in_browser=true, is the dependable way to open the workflow; offer those, especially when there is no link (large workflows exceed the 8000-character link limit).

workflow_updateA

Change an existing SOLVE-IT workflow and write the result.

The source is a workflow .json file in an allowed directory (see workflow_status), or a Workflow Builder share link (https://workflows.hargs.co.uk/#~...). If the user has opened or edited the workflow in the builder since it was written, ask them for a fresh export or a share link from the builder's Share button and use that as source, so their edits are not lost.

Operations: add nodes and edges, remove nodes or edges by ID (a removed node's edges, selections, evaluations and provenance go with it, and are reported), set data fields on a node, and set mitigation selections. Existing nodes keep their IDs, positions and data except for fields you set; everything else in the file is kept. New nodes are placed after their predecessors. Nodes are given with your own keys; edges, selections and zone members refer to those keys, and the result maps each key to the node ID the server assigned. A sub-technique ID can be given directly as a technique: it is stored as its parent technique with the sub-technique as a method. Zones take the keys of their member nodes and are drawn around them. Use decision or fork nodes for branches out of a step. Use workflow_find_techniques to look up DFT IDs. New edges, selections and set_data may also refer to existing node IDs; call workflow_inspect first to get node IDs when the workflow came from the builder or an earlier session. Edges cannot connect notes or zones: the builder draws no connection points on them.

Where it is written: a source file inside the output directory is updated in place; a source elsewhere, or a link, gives a new file in the output directory (named by 'filename', else the source file's name, else the title). The result gives the path written, which later updates should use.

If a link is returned, give it to the user exactly as returned, in full: changing even one character breaks it. The file path, or open_in_browser=true, is the dependable way to open the workflow; offer those, especially when there is no link (large workflows exceed the 8000-character link limit).

workflow_inspectA

Read an existing SOLVE-IT workflow without changing it: its title, layout direction, and every node and connection with their IDs and a short label.

The source is a workflow .json file in an allowed directory (see workflow_status), or a Workflow Builder share link (https://workflows.hargs.co.uk/#~...). Use it before workflow_update to find the node IDs to connect to, change or remove. Labels are text taken from the file, given as data.

workflow_validateA

Check a workflow against the Workflow Builder's rules and the SOLVE-IT knowledge base.

Give exactly one of file_path or workflow. Errors mean the builder would mis-render or drop something; warnings mean it opens but something looks wrong. Every finding names the node or edge ID.

workflow_compileA

List the weaknesses and mitigations for every technique step, in flow order.

Mirrors the builder's Compile step. Give exactly one of file_path or workflow. By default each step is summarised (weakness count, counts per status, worst status); detail=true adds full weakness and mitigation rows. A mitigation is in place when its selection is Y, or when it has no selection and its implementing technique is on the canvas (not in assessment mode). If the workflow has validation errors, only the errors are returned.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.1/5.0

Scored across 7 tools

Disambiguation4/5

Each tool targets a distinct lifecycle action: status (server readiness), find_techniques (lookup), create, update, inspect, validate, and compile. The only mild overlap is validate vs. compile, since compile also surfaces validation errors, but the descriptions clearly distinguish structural checking from weakness/mitigation reporting.

Naming Consistency4/5

All tools share a predictable 'workflow_' prefix, and most follow a verb_noun pattern (find_techniques, create, update, inspect, validate, compile). workflow_status is a noun rather than a verb, a minor deviation but still readable and unambiguous.

Tool Count5/5

Seven tools is well-scoped for a workflow authoring domain, covering discovery, CRUD-ish editing, inspection, validation, and compilation without redundancy or bloat.

Completeness4/5

The surface covers the full authoring loop: find techniques, create, update (add/remove nodes and edges), inspect, validate, and compile. A dedicated delete/remove-workflow tool is missing, but node/edge removal is handled inside update, so agents can work around it.

Maintenance

ActivityMaintained
ResponsivenessNo issues