MCP Hub
Back to servers

Omniboard MCP

MCP server that exposes actionable Omniboard checks for the current project to a local agent.

glama
Updated
Apr 27, 2026

Omniboard.dev MCP

MCP server that exposes actionable Omniboard checks for the current project to a local agent.

The server resolves the current project name using the same project-resolution approach as @omniboard/analyzer, retrieves Omniboard settings, then asks the API for actionable check results for that project.

Environment

Required:

OMNIBOARD_API_KEY_MCP=...

The MCP server expects this environment variable to be set before the agent is started. The API key must be an Omniboard API key that is allowed to access the MCP endpoints.

Optional:

OMNIBOARD_API_URL=https://api.omniboard.dev

Registering The MCP Server

The server uses the standard MCP stdio transport. Build the package first:

npm install
npm run build

Then register the built executable with your MCP client.

Generic stdio config

Use this shape for clients that accept MCP server JSON configuration:

{
  "mcpServers": {
    "omniboard": {
      "command": "npx",
      "args": ["@omniboard/mcp"],
      "env": {
        "OMNIBOARD_API_KEY_MCP": "your-api-key"
      }
    }
  }
}

For local development from a checkout:

{
  "mcpServers": {
    "omniboard": {
      "command": "node",
      "args": ["/absolute/path/to/mcp/dist/index.js"],
      "env": {
        "OMNIBOARD_API_KEY_MCP": "your-api-key",
        "OMNIBOARD_API_URL": "https://api.omniboard.dev"
      }
    }
  }
}

Codex config.toml

Add an MCP server entry to your Codex config:

[mcp_servers.omniboard]
command = "npx"
args = ["@omniboard/mcp"]

[mcp_servers.omniboard.env]
OMNIBOARD_API_KEY_MCP = "your-api-key"

For local development from a checkout:

[mcp_servers.omniboard]
command = "node"
args = ["/absolute/path/to/mcp/dist/index.js"]

[mcp_servers.omniboard.env]
OMNIBOARD_API_KEY_MCP = "your-api-key"
OMNIBOARD_API_URL = "https://api.omniboard.dev"

Alternatively, set OMNIBOARD_API_KEY_MCP in the shell environment before starting the agent and omit the env block from the client config.

Bash:

export OMNIBOARD_API_KEY_MCP="your-api-key"
codex

Fish:

set -x OMNIBOARD_API_KEY_MCP "your-api-key"
codex

PowerShell:

$env:OMNIBOARD_API_KEY_MCP = "your-api-key"
codex

Tools

omniboard_list_actionable_checks

Returns the actionable checks that currently have results for the resolved project.

Response:

{
  "project": {
    "id": 1,
    "name": "example-project",
    "lastAnalysisDate": "2026-04-27T12:00:00.000Z"
  },
  "checks": [
    {
      "name": "UXF",
      "type": "content",
      "description": "UXF usage detected",
      "prompt": "Update the matched usages...",
      "value": true
    }
  ]
}

omniboard_get_actionable_check_results

Input:

{
  "name": "UXF"
}

Returns the result context for the check. The API owns the result DTO, so the MCP passes it through as result.

Response:

{
  "project": {
    "id": 1,
    "name": "example-project"
  },
  "check": {
    "name": "UXF",
    "type": "content",
    "description": "UXF usage detected",
    "actionable": true,
    "prompt": "Update the matched usages..."
  },
  "result": {}
}

Backend Endpoints

Checks

GET /mcp/checks?projectName=example-project

Expected response:

{
  "project": {
    "id": 1,
    "name": "example-project",
    "lastAnalysisDate": "2026-04-27T12:00:00.000Z"
  },
  "checks": [
    {
      "name": "UXF",
      "type": "content",
      "description": "UXF usage detected",
      "actionable": true,
      "prompt": "Update the matched usages...",
      "value": true
    }
  ]
}

Result

GET /mcp/result?projectName=example-project&checkName=UXF

Expected response:

{
  "project": {
    "id": 1,
    "name": "example-project"
  },
  "check": {
    "name": "UXF",
    "type": "content",
    "description": "UXF usage detected",
    "actionable": true,
    "prompt": "Update the matched usages..."
  },
  "result": {}
}

Reviews

No reviews yet

Sign in to write a review