Rank
83
A Model Context Protocol (MCP) server for GitLab
Traction
No public download signal
Freshness
Updated 2d ago
Crawler Summary
Developer-first MCP gateway that aggregates multiple MCP servers behind a single unified endpoint <img src="docs/assets/goblin-logo.svg" alt="Goblin" height="48"> Goblin MCP Gateway <div align="center"> **Developer-first MCP gateway that aggregates multiple MCP servers behind a single unified endpoint** [![Build Status][build-badge]][build-url] [![Tests][tests-badge]][tests-url] [![Coverage][coverage-badge]][coverage-url] [![Version][version-badge]][version-url] [![License][license-badge]][license-url] _Blazing-f Capability contract not published. No trust telemetry is available yet. Last updated 2/25/2026.
Freshness
Last checked 2/25/2026
Best For
@talkingthreads/goblin is best for mcp, model-context-protocol, gateway 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
Developer-first MCP gateway that aggregates multiple MCP servers behind a single unified endpoint <img src="docs/assets/goblin-logo.svg" alt="Goblin" height="48"> Goblin MCP Gateway <div align="center"> **Developer-first MCP gateway that aggregates multiple MCP servers behind a single unified endpoint** [![Build Status][build-badge]][build-url] [![Tests][tests-badge]][tests-url] [![Coverage][coverage-badge]][coverage-url] [![Version][version-badge]][version-url] [![License][license-badge]][license-url] _Blazing-f
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
Talkingthreads
Artifacts
0
Benchmarks
0
Last release
0.3.0-rc.5
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/TalkingThreads/goblin.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
Talkingthreads
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
git clone https://github.com/TalkingThreads/goblin.git cd goblin bun install
json
{
"servers": [
{
"name": "filesystem",
"transport": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"],
"enabled": true
}
],
"gateway": {
"port": 3000,
"host": "127.0.0.1"
}
}bash
# Development mode (with hot reload) bun run dev # Production mode bun run build bun run start # With TUI dashboard goblin start --tui # STDIO mode (for Claude CLI integration) goblin stdio
bash
git clone https://github.com/TalkingThreads/goblin.git cd goblin bun install bun run build
bash
goblin start # Start the gateway (default: HTTP mode) goblin start --tui # Start with TUI dashboard goblin start --port 8080 # Custom port goblin restart # Graceful restart goblin stop # Graceful shutdown
bash
goblin servers # List all servers goblin servers add <name> <type> # Add a new server goblin servers remove <name> # Remove a server goblin servers enable <name> # Enable a disabled server goblin servers disable <name> # Disable a server
Full documentation captured from public sources, including the complete README when available.
Docs source
GITHUB MCP
Editorial quality
ready
Developer-first MCP gateway that aggregates multiple MCP servers behind a single unified endpoint <img src="docs/assets/goblin-logo.svg" alt="Goblin" height="48"> Goblin MCP Gateway <div align="center"> **Developer-first MCP gateway that aggregates multiple MCP servers behind a single unified endpoint** [![Build Status][build-badge]][build-url] [![Tests][tests-badge]][tests-url] [![Coverage][coverage-badge]][coverage-url] [![Version][version-badge]][version-url] [![License][license-badge]][license-url] _Blazing-f
Developer-first MCP gateway that aggregates multiple MCP servers behind a single unified endpoint
Blazing-fast performance β’ Hot reload β’ Enterprise-ready
</div>Goblin is a production-ready Model Context Protocol (MCP) gateway that solves tool sprawl, context bloat, and brittle integrations in agentic AI systems. Built with Bun, TypeScript, Hono, and the MCP SDK, Goblin provides sub-50ms latency targets and a developer-first experience including a real-time TUI dashboard, structured logging, and comprehensive observability.
| Core Gateway | Management | Security | Observability | |:------------:|:----------:|:--------:|:-------------:| | π Unified Aggregation | ποΈ TUI Dashboard | β Secure by Default | π Structured Logging | | π£οΈ Intelligent Routing | β‘ Hot Reload | π API Key Auth | π Custom Metrics | | π Multi-Transport | π§ CLI Commands | π‘οΈ RBAC Ready | π Real-time TUI | | π¦ Virtual Tools | π₯οΈ Interactive TUI | π Audit Logging | π¨ Health Checks |
</div>git clone https://github.com/TalkingThreads/goblin.git
cd goblin
bun install
Create a config.json file:
{
"servers": [
{
"name": "filesystem",
"transport": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"],
"enabled": true
}
],
"gateway": {
"port": 3000,
"host": "127.0.0.1"
}
}
# Development mode (with hot reload)
bun run dev
# Production mode
bun run build
bun run start
# With TUI dashboard
goblin start --tui
# STDIO mode (for Claude CLI integration)
goblin stdio
That's it! Goblin is now running at http://127.0.0.1:3000.
http://127.0.0.1:3000/mcphttp://127.0.0.1:3000/ssegit clone https://github.com/TalkingThreads/goblin.git
cd goblin
bun install
bun run build
| Tool | Version | Required | |------|---------|----------| | Bun | >= 1.3.8 | β Yes | | Node.js | >= 20.0.0 | For CLI only |
| Topic | Description | |-------|-------------| | π Getting Started | Step-by-step installation and configuration | | ποΈ Architecture | System design and component overview | | π» CLI Reference | Complete CLI commands documentation | | π API Reference | HTTP endpoints and API documentation | | βοΈ Configuration | Complete configuration reference | | π§ Troubleshooting | Common issues and solutions |
goblin start # Start the gateway (default: HTTP mode)
goblin start --tui # Start with TUI dashboard
goblin start --port 8080 # Custom port
goblin restart # Graceful restart
goblin stop # Graceful shutdown
goblin servers # List all servers
goblin servers add <name> <type> # Add a new server
goblin servers remove <name> # Remove a server
goblin servers enable <name> # Enable a disabled server
goblin servers disable <name> # Disable a server
goblin tools list # List all available tools
goblin tools invoke <name> --args '{"path": "/tmp"}'
goblin tools describe <name> # Show tool schema
goblin config validate # Validate configuration
goblin config show # Display current config
goblin config reload # Hot reload config
goblin status # Gateway status
goblin health # Health check
goblin logs # Show logs
goblin logs -f # Follow logs
goblin metrics # Performance metrics
# Bash
goblin completion bash >> ~/.bashrc
# Zsh
goblin completion zsh >> ~/.zshrc
# Fish
goblin completion fish > ~/.config/fish/completions/goblin.fish
See CLI Reference for complete documentation.
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Goblin MCP Gateway β
β β
β ββββββββββββ ββββββββββββ ββββββββββββ ββββββββββββ β
β β Client ββββΆβ HTTP ββββΆβ Router ββββΆβ Registry β β
β β (MCP) β β Gateway β β β β β β
β ββββββββββββ ββββββββββββ ββββββββββββ ββββββββββββ β
β β β β
β βΌ βΌ β
β ββββββββββββ ββββββββββββ ββββββββββββ ββββββββββββ β
β β Client βββββ TUI βββββ Metrics βββββ Transportβ β
β β (MCP) β βDashboard β β β β Pool β β
β ββββββββββββ ββββββββββββ ββββββββββββ ββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β β
βΌ βΌ βΌ
ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ
β MCP Server 1 β β MCP Server 2 β β MCP Server N β
β (Filesystem) β β (Git) β β (Custom) β
ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ
See Architecture for detailed component documentation.
Local subprocess-based transport for running MCP servers as child processes:
{
"name": "filesystem",
"transport": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"],
"enabled": true
}
Simple HTTP transport for connecting to HTTP-based MCP servers:
{
"name": "remote-server",
"transport": "http",
"url": "http://localhost:3001/mcp",
"enabled": true
}
Server-Sent Events transport for server-push notifications:
{
"name": "sse-server",
"transport": "sse",
"url": "http://localhost:3002/sse",
"enabled": true
}
Stateful HTTP transport with session management, automatic reconnection, and custom headers:
{
"name": "streamable-server",
"transport": "streamablehttp",
"url": "http://localhost:3003/mcp",
"headers": {
"Authorization": "Bearer your-token-here"
},
"reconnect": {
"enabled": true,
"delay": 1000,
"maxRetries": 5,
"backoffMultiplier": 2
},
"enabled": true
}
Goblin supports three connection lifecycle modes for backend MCP servers:
| Mode | Description | Use Case |
|------|-------------|----------|
| stateful (default) | Connections kept alive indefinitely, reused across requests | High-frequency tool calls, persistent sessions |
| smart | Connections kept alive, evicted after 60 seconds of idle time | Balance between responsiveness and resource efficiency |
| stateless | Connections created per request, evicted quickly after use | Low-frequency calls, resource-constrained environments |
Add the mode property to your server configuration:
{
"name": "filesystem",
"transport": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"],
"mode": "smart",
"enabled": true
}
| Component | Technology | Purpose | |-----------|------------|---------| | Runtime | Bun | Fast JavaScript runtime | | MCP Core | @modelcontextprotocol/sdk | Protocol implementation | | HTTP Server | Hono | Lightweight web framework | | Validation | Zod | Runtime type validation | | Logging | Pino | Structured JSON logging | | Metrics | Custom (zero-dep) | In-memory metrics | | CLI | Commander.js | Command-line interface | | TUI | Ink + React | Terminal UI |
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
bun testThis project uses Husky for pre-commit hooks:
# Install hooks (runs automatically after bun install)
bun run prepare
Hooks check:
bun run typecheck)bun run lint)bun test tests/unit/)| Document | Description | |----------|-------------| | CHANGELOG.md | Version history and release notes | | MAINTAINERS.md | Project maintainers | | CODE_OF_CONDUCT.md | Community guidelines | | openspec/project.md | Project context and design |
Built with β€οΈ by the TalkingThreads team
</div> <!-- Badges --> <!-- URLs --> <!-- Documentation Links --> <!-- External Links -->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://xpersona.co/api/v1/agents/mcp-talkingthreads-goblin/snapshot"
curl -s "https://xpersona.co/api/v1/agents/mcp-talkingthreads-goblin/contract"
curl -s "https://xpersona.co/api/v1/agents/mcp-talkingthreads-goblin/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.
Rank
83
A Model Context Protocol (MCP) server for GitLab
Traction
No public download signal
Freshness
Updated 2d ago
Rank
80
A Model Context Protocol (MCP) server for GitLab
Traction
No public download signal
Freshness
Updated 2d ago
Rank
74
Expose OpenAPI definition endpoints as MCP tools using the official Rust SDK for the Model Context Protocol (https://github.com/modelcontextprotocol/rust-sdk)
Traction
No public download signal
Freshness
Updated 2d ago
Rank
72
An actix_web backend for the official Rust SDK for the Model Context Protocol (https://github.com/modelcontextprotocol/rust-sdk)
Traction
No public download signal
Freshness
Updated 2d ago
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://xpersona.co/api/v1/agents/mcp-talkingthreads-goblin/snapshot",
"contractUrl": "https://xpersona.co/api/v1/agents/mcp-talkingthreads-goblin/contract",
"trustUrl": "https://xpersona.co/api/v1/agents/mcp-talkingthreads-goblin/trust"
},
"curlExamples": [
"curl -s \"https://xpersona.co/api/v1/agents/mcp-talkingthreads-goblin/snapshot\"",
"curl -s \"https://xpersona.co/api/v1/agents/mcp-talkingthreads-goblin/contract\"",
"curl -s \"https://xpersona.co/api/v1/agents/mcp-talkingthreads-goblin/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-04-17T04:16:07.473Z"
}
},
"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": "gateway",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "proxy",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "ai-tools",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "llm",
"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:gateway|supported|profile capability:proxy|supported|profile capability:ai-tools|supported|profile capability:llm|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": "Talkingthreads",
"href": "https://github.com/TalkingThreads/goblin",
"sourceUrl": "https://github.com/TalkingThreads/goblin",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-02-25T03:19:47.497Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "MCP",
"href": "https://xpersona.co/api/v1/agents/mcp-talkingthreads-goblin/contract",
"sourceUrl": "https://xpersona.co/api/v1/agents/mcp-talkingthreads-goblin/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-02-25T03:19:47.497Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://xpersona.co/api/v1/agents/mcp-talkingthreads-goblin/trust",
"sourceUrl": "https://xpersona.co/api/v1/agents/mcp-talkingthreads-goblin/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 @talkingthreads/goblin and adjacent AI workflows.