MCP Server

Model Context Protocol (MCP) is an open standard developed by Anthropic that enables AI tools — such as Claude Desktop, Cursor, VS Code with GitHub Copilot, or other AI-powered development environments — to connect to external systems and services. MCP defines a uniform interface through which AI assistants can query data, execute operations, and interact with connected applications directly from within the development environment.

Higson provides a built-in MCP server that exposes Higson Studio’s capabilities to MCP-compatible AI tools. Through this integration, an AI assistant can interact with the Higson environment — for example, retrieve business configuration or inspect decision tables — without leaving the IDE.


Enabling the MCP Server#

To enable the Higson MCP server, add the following properties to your application.yml:

1
2
3
4
5
6
7
8
higson:
  studio:
    mcp:
      enabled: true
    security:
      token:
        verification:
          studio-token-secured-paths: /snapshots/import,/snapshots/export,/mcp,/mcp/sse,/mcp/messages/**

The studio-token-secured-paths property defines which Studio API paths require a valid Studio token for authentication. The MCP endpoints (/mcp, /mcp/sse, /mcp/messages/**) must be included to ensure that only authorized AI clients — authenticated with a token generated in Studio — can connect to the MCP server.

Property Description Default value
higson.studio.mcp.enabled Enables the MCP server. When set to false, the MCP endpoint is not exposed. false
higson.studio.security.token.verification.studio-token-secured-paths Comma-separated list of URL paths secured by Studio token verification.

Connecting an AI Client to Higson MCP#

Step 1 — Generate a Token in Studio#

  1. Log in to Higson Studio: http://localhost:38080/higson
  2. Go to the Licences and tokens tab (key icon in the top menu).
  3. Click New token.
  4. Set the following fields:
    • User: admin (or any other user)
    • Type: Studio
    • Expiration Date: any future date (e.g., 2049-02-02)
  5. Click Generate token.
  6. Copy the generated JWT token.

Step 2 — Configure the MCP Client#

Add the following entry to your AI client’s MCP configuration file:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
{
  "mcpServers": {
    "higson": {
      "type": "http",
      "url": "http://localhost:38080/higson/api/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

Replace <YOUR_TOKEN> with the token copied in Step 6. Replace http://localhost:38080 with the actual address of your Higson Studio instance.

Configuration File Locations#

Client Configuration file
Claude Desktop (macOS) ~/Library/Application Support/Claude/claude_desktop_config.json
Claude Desktop (Windows) %APPDATA%\Claude\claude_desktop_config.json
Cursor .cursor/mcp.json in the project directory, or ~/.cursor/mcp.json globally
VS Code (GitHub Copilot) .vscode/mcp.json in the project directory

Example: Full Claude Desktop Configuration#

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
{
  "mcpServers": {
    "higson": {
      "type": "http",
      "url": "http://localhost:38080/higson/api/mcp",
      "headers": {
        "Authorization": "Bearer eyJhbGciOiJIUzI1NiJ9..."
      }
    }
  }
}

Available Tools#

The Higson MCP server exposes the following tools to AI clients, organized by domain:

Decision Tables (Parameters)#

Tool Description
higson_list_decision_tables List all decision tables
higson_get_decision_table Get table definition (columns, types, matchers)
higson_get_decision_table_matrix Retrieve data rows
higson_create_decision_table Create a new decision table
higson_update_decision_table Update table structure
higson_delete_decision_table Delete one or more tables
higson_rename_decision_table Rename a table
higson_get_decision_table_history View change history
higson_open_decision_table Open a table
higson_update_decision_table_matrix Update data rows
higson_export_decision_tables Export decision tables
higson_import_decision_tables Import decision tables

Context Types#

Tool Description
higson_list_context_types List all context types
higson_get_context_type Get a context type definition
higson_get_context_type_paths Get available paths for a context type
higson_create_context_type Create a new context type
higson_update_context_type Update a context type
higson_delete_context_type Delete a context type
higson_clear_context Clear context data
higson_export_context Export context types
higson_import_context Import context types

Domain Configuration#

Tool Description
higson_get_domain_configuration_tree Get the full domain configuration tree
higson_get_domain_element_details Get details of a domain element
higson_get_domain_collection_details Get details of a domain collection
higson_create_domain_element Create a new domain element
higson_update_domain_element Update a domain element
higson_delete_domain_element Delete a domain element
higson_set_domain_attribute Set a domain attribute value
higson_export_domain_configuration Export domain configuration
higson_import_domain_configuration Import domain configuration
higson_get_domain_definition Get the domain type definition
higson_update_domain_type Update a domain type
higson_delete_domain_type Delete a domain type
higson_export_domain_definition Export the domain definition
higson_import_domain_definition Import a domain definition
higson_delete_all_domain_types Delete all domain types

Flows#

Tool Description
higson_list_flows List all flows
higson_get_flow Get a flow definition
higson_create_flow Create a new flow
higson_update_flow Update a flow
higson_rename_flow Rename a flow
higson_get_flow_history View flow change history
higson_delete_flow Delete a flow
higson_export_flows Export flows
higson_import_flows Import flows

Functions#

Tool Description
higson_list_functions List all functions
higson_get_function Get a function definition
higson_create_function Create a new function
higson_update_function Update a function
higson_delete_function Delete a function
higson_rename_function Rename a function
higson_get_function_history View function change history
higson_export_functions Export functions
higson_import_functions Import functions

Profiles & Regions#

Tool Description
higson_list_profiles List all profiles
higson_assign_to_profile Assign an entity to a profile
higson_detach_from_profile Detach an entity from a profile
higson_list_regions List all regions
higson_attach_to_region Attach an entity to a region
higson_detach_from_region Detach an entity from a region

Snapshots#

Tool Description
higson_export_snapshot Export a full configuration snapshot
higson_import_snapshot Import a configuration snapshot
higson_get_snapshot_import_job Get the status of a snapshot import job

Tests#

Tool Description
higson_list_tests List all tests
higson_get_test Get a test definition
higson_run_test Run a test
higson_create_test Create a new test
higson_update_test Update a test
higson_delete_test Delete a test
higson_export_tests Export tests
higson_import_tests Import tests

Other#

Tool Description
higson_search Search across Higson entities
higson_get_version Get the Higson version
higson_generate_runtime_request Generate a runtime request
higson_list_work_sessions List active work sessions
higson_publish_changes Publish pending changes
higson_reject_changes Reject pending changes

Verification#

After saving the configuration, restart your AI client. Higson should appear as an available tool (MCP server).

You can test the connection by sending a prompt in the chat:

“List available Higson tools” or “Show me the decision tables from Higson”


Claude Code Skills#

Claude Code skills are pre-written prompt templates stored as Markdown files in the .claude/skills/ directory of a project. Each skill defines a slash command (e.g., /higson:review) that a developer can invoke in Claude Code to trigger a specific, repeatable AI-assisted workflow.

Why Use Skills#

Skills are useful when a team wants to standardize how AI assistance is used across a project. Instead of writing the same prompt from scratch each time, a developer invokes a named skill and Claude Code executes the predefined workflow. This improves consistency, reduces onboarding time, and ensures that AI-assisted tasks follow the same quality standards across the team.

Using Skills in Claude Code#

To invoke a skill, type the skill’s slash command in the Claude Code input field:

/higson:review

Claude Code loads the corresponding skill file and runs the workflow defined in it.

Adding Skills to a Project#

Skills are stored as .md files in the .claude/skills/ directory:

.claude/
  skills/
    review.md
    validate.md

Each file contains the prompt template for that skill. The filename (without the .md extension) becomes the skill name used in the slash command. For example, review.md is invoked as /higson:review (where higson is the project namespace defined in Claude Code settings).