gitlab-mcp
A Model Context Protocol (MCP) server for GitLab
Crawler Summary
MCP server exposing WebSketch IR capture, diff, and render tools <p align="center"> <img src=".github/websketch-logo.png" alt="WebSketch" width="400"> </p> websketch-mcp $1 $1 $1 MCP server exposing $1 tools for LLM agents. Getting Started See the full $1 in websketch-ir. Features - π‘οΈ **websketch_validate**: Preflight validation (never throws, returns { ok: true/false }) - π¨ **websketch_render**: Render WebSketch IR captures to ASCII wireframes - π **websketch_diff**: Compute Capability contract not published. No trust telemetry is available yet. Last updated 2/25/2026.
Freshness
Last checked 2/25/2026
Best For
websketch-mcp is best for mcp, model-context-protocol, websketch workflows where MCP compatibility matters.
Not Ideal For
Contract metadata is missing or unavailable for deterministic execution.
Evidence Sources Checked
editorial-content, GITHUB MCP, runtime-metrics, public facts pack
MCP server exposing WebSketch IR capture, diff, and render tools <p align="center"> <img src=".github/websketch-logo.png" alt="WebSketch" width="400"> </p> websketch-mcp $1 $1 $1 MCP server exposing $1 tools for LLM agents. Getting Started See the full $1 in websketch-ir. Features - π‘οΈ **websketch_validate**: Preflight validation (never throws, returns { ok: true/false }) - π¨ **websketch_render**: Render WebSketch IR captures to ASCII wireframes - π **websketch_diff**: Compute
Public facts
4
Change events
1
Artifacts
0
Freshness
Feb 25, 2026
Capability contract not published. No trust telemetry is available yet. Last updated 2/25/2026.
Trust score
Unknown
Compatibility
MCP
Freshness
Feb 25, 2026
Vendor
Mcp Tool Shop Org
Artifacts
0
Benchmarks
0
Last release
0.2.1
Key links, install path, and a quick operational read before the deeper crawl record.
Summary
Capability contract not published. No trust telemetry is available yet. Last updated 2/25/2026.
Setup snapshot
git clone https://github.com/mcp-tool-shop-org/websketch-mcp.gitSetup complexity is MEDIUM. Standard integration tests and API key provisioning are required before connecting this to production workloads.
Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.
Vendor
Mcp Tool Shop Org
Protocol compatibility
MCP
Handshake status
UNKNOWN
Crawlable docs
6 indexed pages on the official domain
Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.
Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.
Extracted files
0
Examples
6
Snippets
0
Languages
typescript
bash
# Install
npm install -g websketch-mcp
# Add to Claude Desktop config:
# { "mcpServers": { "websketch": { "command": "websketch-mcp" } } }
# The MCP server exposes 4 tools:
# 1. websketch_validate - preflight check (always call first)
# 2. websketch_render - ASCII wireframe
# 3. websketch_diff - compare two captures
# 4. websketch_fingerprint - structural hashbash
npm install -g websketch-mcp
bash
git clone https://github.com/mcp-tool-shop-org/websketch-mcp.git cd websketch-mcp npm ci npm run build npm link
json
{
"mcpServers": {
"websketch": {
"command": "websketch-mcp"
}
}
}bash
# Run as stdio server websketch-mcp
typescript
import { spawn } from 'child_process';
const server = spawn('websketch-mcp', [], {
stdio: ['pipe', 'pipe', 'inherit'],
});
// Send MCP protocol messages via stdin/stdoutFull documentation captured from public sources, including the complete README when available.
Docs source
GITHUB MCP
Editorial quality
ready
MCP server exposing WebSketch IR capture, diff, and render tools <p align="center"> <img src=".github/websketch-logo.png" alt="WebSketch" width="400"> </p> websketch-mcp $1 $1 $1 MCP server exposing $1 tools for LLM agents. Getting Started See the full $1 in websketch-ir. Features - π‘οΈ **websketch_validate**: Preflight validation (never throws, returns { ok: true/false }) - π¨ **websketch_render**: Render WebSketch IR captures to ASCII wireframes - π **websketch_diff**: Compute
MCP server exposing WebSketch IR tools for LLM agents.
# Install
npm install -g websketch-mcp
# Add to Claude Desktop config:
# { "mcpServers": { "websketch": { "command": "websketch-mcp" } } }
# The MCP server exposes 4 tools:
# 1. websketch_validate - preflight check (always call first)
# 2. websketch_render - ASCII wireframe
# 3. websketch_diff - compare two captures
# 4. websketch_fingerprint - structural hash
See the full workflow guide in websketch-ir.
{ ok: true/false })npm install -g websketch-mcp
git clone https://github.com/mcp-tool-shop-org/websketch-mcp.git
cd websketch-mcp
npm ci
npm run build
npm link
Add to your claude_desktop_config.json:
{
"mcpServers": {
"websketch": {
"command": "websketch-mcp"
}
}
}
# Run as stdio server
websketch-mcp
Or programmatically in Node.js:
import { spawn } from 'child_process';
const server = spawn('websketch-mcp', [], {
stdio: ['pipe', 'pipe', 'inherit'],
});
// Send MCP protocol messages via stdin/stdout
Render a WebSketch IR capture to ASCII wireframe.
Input:
{
"capture": {
"root": {
"type": "Frame",
"id": "root",
"children": [...]
}
}
}
Output:
βββββββββββββββββββββββ
β Frame (root) β
β βββ Button (#btn1) β
β βββ Text (#text1) β
βββββββββββββββββββββββ
Compute a diff between two WebSketch IR captures.
Input:
{
"before": { "root": {...} },
"after": { "root": {...} }
}
Output:
{
"added": [...],
"removed": [...],
"modified": [...]
}
Generate a deterministic fingerprint for a capture.
Input:
{
"capture": { "root": {...} }
}
Output:
abc123def456...
# Clone the repository
git clone https://github.com/mcp-tool-shop-org/websketch-mcp.git
cd websketch-mcp
# Install dependencies
npm ci
# Build
npm run build
# Run tests
npm test
# Type check
npm run typecheck
# Lint
npm run lint
npm run build # Compile TypeScript to dist/
npm run dev # Watch mode compilation
npm run start # Run the compiled server
npm run typecheck # Type checking without emit
npm run lint # Run ESLint
npm run lint:fix # Fix ESLint issues
npm test # Run tests in watch mode
npm run test:run # Run tests once
npm run test:coverage # Generate coverage report
npm run clean # Remove dist/ folder
websketch-mcp/
βββ src/
β βββ index.ts # Main server implementation
βββ tests/
β βββ smoke.test.ts # Test files
βββ scripts/
β βββ add-shebang.js # Post-build script
βββ .github/
β βββ workflows/
β β βββ ci.yml # CI pipeline (includes security scanning)
β β βββ publish.yml # npm publish (release + dispatch)
β βββ dependabot.yml # Dependency updates
βββ dist/ # Compiled output (gitignored)
βββ package.json # Package configuration
βββ tsconfig.json # TypeScript configuration
βββ vitest.config.ts # Test configuration
βββ .eslintrc.cjs # ESLint configuration
# Run all tests
npm test
# Run tests once (for CI)
npm run test:run
# Generate coverage report
npm run test:coverage
Tests are written using Vitest. See tests/ directory for examples.
The package is configured with pre-publish safety checks:
# This will automatically:
# 1. Run type checking
# 2. Run linting
# 3. Run tests
# 4. Build the package
npm publish
Manual publish steps:
# Bump version
npm version patch|minor|major
# Publish to npm
npm publish
# Push tags
git push --follow-tags
# Ensure global bin directory is in PATH
npm config get prefix
# Or use npx
npx websketch-mcp
# Clean and rebuild
npm run clean
npm ci
npm run build
The post-build script automatically makes dist/index.js executable. If you encounter issues:
chmod +x dist/index.js
See CONTRIBUTING.md for guidelines.
MIT - see LICENSE file for details.
For questions or issues, please open an issue on GitHub.
Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.
Contract coverage
Status
missing
Auth
None
Streaming
No
Data region
Unspecified
Protocol support
Requires: none
Forbidden: none
Guardrails
Operational confidence: low
curl -s "https://www.xpersona.co/api/v1/agents/mcp-mcp-tool-shop-org-websketch-mcp/snapshot"
curl -s "https://www.xpersona.co/api/v1/agents/mcp-mcp-tool-shop-org-websketch-mcp/contract"
curl -s "https://www.xpersona.co/api/v1/agents/mcp-mcp-tool-shop-org-websketch-mcp/trust"
Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.
Trust signals
Handshake
UNKNOWN
Confidence
unknown
Attempts 30d
unknown
Fallback rate
unknown
Runtime metrics
Observed P50
unknown
Observed P95
unknown
Rate limit
unknown
Estimated cost
unknown
Do not use if
Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.
Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.
A Model Context Protocol (MCP) server for GitLab
A Model Context Protocol (MCP) server for GitLab
This agent researches trends, scripts videos, sets up engagement automation, and compiles everything into a shareable document.
This agent analyzes Reddit data to generate trending content concepts tailored to your audience.
Contract JSON
{
"contractStatus": "missing",
"authModes": [],
"requires": [],
"forbidden": [],
"supportsMcp": false,
"supportsA2a": false,
"supportsStreaming": false,
"inputSchemaRef": null,
"outputSchemaRef": null,
"dataRegion": null,
"contractUpdatedAt": null,
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Invocation Guide
{
"preferredApi": {
"snapshotUrl": "https://www.xpersona.co/api/v1/agents/mcp-mcp-tool-shop-org-websketch-mcp/snapshot",
"contractUrl": "https://www.xpersona.co/api/v1/agents/mcp-mcp-tool-shop-org-websketch-mcp/contract",
"trustUrl": "https://www.xpersona.co/api/v1/agents/mcp-mcp-tool-shop-org-websketch-mcp/trust"
},
"curlExamples": [
"curl -s \"https://www.xpersona.co/api/v1/agents/mcp-mcp-tool-shop-org-websketch-mcp/snapshot\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/mcp-mcp-tool-shop-org-websketch-mcp/contract\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/mcp-mcp-tool-shop-org-websketch-mcp/trust\""
],
"jsonRequestTemplate": {
"query": "summarize this repo",
"constraints": {
"maxLatencyMs": 2000,
"protocolPreference": [
"MCP"
]
}
},
"jsonResponseTemplate": {
"ok": true,
"result": {
"summary": "...",
"confidence": 0.9
},
"meta": {
"source": "GITHUB_MCP",
"generatedAt": "2026-10-09T02:28:11.642Z"
}
},
"retryPolicy": {
"maxAttempts": 3,
"backoffMs": [
500,
1500,
3500
],
"retryableConditions": [
"HTTP_429",
"HTTP_503",
"NETWORK_TIMEOUT"
]
}
}Trust JSON
{
"status": "unavailable",
"handshakeStatus": "UNKNOWN",
"verificationFreshnessHours": null,
"reputationScore": null,
"p95LatencyMs": null,
"successRate30d": null,
"fallbackRate": null,
"attempts30d": null,
"trustUpdatedAt": null,
"trustConfidence": "unknown",
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Capability Matrix
{
"rows": [
{
"key": "MCP",
"type": "protocol",
"support": "unknown",
"confidenceSource": "profile",
"notes": "Listed on profile"
},
{
"key": "mcp",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "model-context-protocol",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "websketch",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "ui-capture",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "llm-tools",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "cli",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
}
],
"flattenedTokens": "protocol:MCP|unknown|profile capability:mcp|supported|profile capability:model-context-protocol|supported|profile capability:websketch|supported|profile capability:ui-capture|supported|profile capability:llm-tools|supported|profile capability:cli|supported|profile"
}Facts JSON
[
{
"factKey": "docs_crawl",
"category": "integration",
"label": "Crawlable docs",
"value": "6 indexed pages on the official domain",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
},
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Mcp Tool Shop Org",
"href": "https://github.com/mcp-tool-shop-org/websketch-mcp#readme",
"sourceUrl": "https://github.com/mcp-tool-shop-org/websketch-mcp#readme",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-02-25T03:09:36.784Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "MCP",
"href": "https://www.xpersona.co/api/v1/agents/mcp-mcp-tool-shop-org-websketch-mcp/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/mcp-mcp-tool-shop-org-websketch-mcp/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-02-25T03:09:36.784Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/mcp-mcp-tool-shop-org-websketch-mcp/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/mcp-mcp-tool-shop-org-websketch-mcp/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
]Change Events JSON
[
{
"eventType": "docs_update",
"title": "Docs refreshed: Sign in to GitHub Β· GitHub",
"description": "Fresh crawlable documentation was indexed for the official domain.",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
}
]Sponsored
Ads related to websketch-mcp and adjacent AI workflows.