Rank
83
A Model Context Protocol (MCP) server for GitLab
Traction
No public download signal
Freshness
Updated 2d ago
Crawler Summary
A production-grade **dynamic MCP server** for Node.js dynamic-mcp $1 A production-grade **dynamic MCP server** for Node.js that enables runtime tool creation, management, and execution in isolated Docker sandboxes. Unlike static MCP servers that define tools at compile time, dynamic-mcp lets AI agents and operators create, update, and delete tools on the fly — each running in a hardened Docker container with full lifecycle management. Key Features - **Runtime tool manag Capability contract not published. No trust telemetry is available yet. 1 GitHub stars reported by the source. Last updated 2/25/2026.
Freshness
Last checked 2/25/2026
Best For
dynamic-mcp is best for mcp, dynamic, docker 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
A production-grade **dynamic MCP server** for Node.js dynamic-mcp $1 A production-grade **dynamic MCP server** for Node.js that enables runtime tool creation, management, and execution in isolated Docker sandboxes. Unlike static MCP servers that define tools at compile time, dynamic-mcp lets AI agents and operators create, update, and delete tools on the fly — each running in a hardened Docker container with full lifecycle management. Key Features - **Runtime tool manag
Public facts
5
Change events
1
Artifacts
0
Freshness
Feb 25, 2026
Capability contract not published. No trust telemetry is available yet. 1 GitHub stars reported by the source. Last updated 2/25/2026.
Trust score
Unknown
Compatibility
MCP
Freshness
Feb 25, 2026
Vendor
Mcpland
Artifacts
0
Benchmarks
0
Last release
0.2.0
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. 1 GitHub stars reported by the source. Last updated 2/25/2026.
Setup snapshot
git clone https://github.com/mcpland/dynamic-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
Mcpland
Protocol compatibility
MCP
Adoption signal
1 GitHub stars
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 dependencies pnpm install # Run in stdio mode (default, mvp profile) pnpm run dev # Run in HTTP mode pnpm run dev:http # Run with enterprise profile pnpm run dev:enterprise
bash
pnpm install pnpm build
bash
node /ABS/PATH/TO/dynamic-mcp/dist/index.js --transport stdio --profile mvp
json
{
"mcpServers": {
"dynamic-mcp": {
"command": "node",
"args": [
"/ABS/PATH/TO/dynamic-mcp/dist/index.js",
"--transport",
"stdio",
"--profile",
"mvp"
],
"env": {
"MCP_DYNAMIC_BACKEND": "file",
"MCP_DYNAMIC_STORE": "/ABS/PATH/TO/dynamic-mcp/.dynamic-mcp/tools.json",
"MCP_SANDBOX_DOCKER_BIN": "docker"
}
}
}
}bash
claude mcp add dynamic-mcp -- node /ABS/PATH/TO/dynamic-mcp/dist/index.js --transport stdio --profile mvp
bash
claude mcp add --transport http dynamic-mcp-http http://127.0.0.1:8788/mcp
Full documentation captured from public sources, including the complete README when available.
Docs source
GITHUB MCP
Editorial quality
ready
A production-grade **dynamic MCP server** for Node.js dynamic-mcp $1 A production-grade **dynamic MCP server** for Node.js that enables runtime tool creation, management, and execution in isolated Docker sandboxes. Unlike static MCP servers that define tools at compile time, dynamic-mcp lets AI agents and operators create, update, and delete tools on the fly — each running in a hardened Docker container with full lifecycle management. Key Features - **Runtime tool manag
A production-grade dynamic MCP server for Node.js that enables runtime tool creation, management, and execution in isolated Docker sandboxes.
Unlike static MCP servers that define tools at compile time, dynamic-mcp lets AI agents and operators create, update, and delete tools on the fly — each running in a hardened Docker container with full lifecycle management.
dynamic.tool.* control planemvp (default) for core functionality, enterprise for long-lived sandbox sessions, metrics, and ops toolsPrerequisites: Node.js >= 20, pnpm, Docker
# Install dependencies
pnpm install
# Run in stdio mode (default, mvp profile)
pnpm run dev
# Run in HTTP mode
pnpm run dev:http
# Run with enterprise profile
pnpm run dev:enterprise
HTTP mode default endpoint: http://127.0.0.1:8788/mcp
mvp profile + stdio transport + file backend (.env.example)enterprise profile + http transport + JWT auth + PostgreSQL backend (.env.prod.example)This project supports both MCP standard transports:
stdio (recommended for local development/CLI clients)Most MCP clients launch your server as a child process in stdio mode, so build once before wiring client config:
pnpm install
pnpm build
Use an absolute path to dist/index.js in client config. Example:
node /ABS/PATH/TO/dynamic-mcp/dist/index.js --transport stdio --profile mvp
Dynamic code execution features (registered dynamic tools, run_js_ephemeral, sandbox.*) require a reachable Docker daemon.
Claude Desktop uses a local claude_desktop_config.json file with mcpServers.
macOS path:
~/Library/Application Support/Claude/claude_desktop_config.json
Windows path:
%APPDATA%\Claude\claude_desktop_config.json
Example:
{
"mcpServers": {
"dynamic-mcp": {
"command": "node",
"args": [
"/ABS/PATH/TO/dynamic-mcp/dist/index.js",
"--transport",
"stdio",
"--profile",
"mvp"
],
"env": {
"MCP_DYNAMIC_BACKEND": "file",
"MCP_DYNAMIC_STORE": "/ABS/PATH/TO/dynamic-mcp/.dynamic-mcp/tools.json",
"MCP_SANDBOX_DOCKER_BIN": "docker"
}
}
}
}
Note: Claude Desktop remote MCP server management is done in app settings (Settings -> Connectors), not in claude_desktop_config.json.
Add local stdio server:
claude mcp add dynamic-mcp -- node /ABS/PATH/TO/dynamic-mcp/dist/index.js --transport stdio --profile mvp
Add remote HTTP server:
claude mcp add --transport http dynamic-mcp-http http://127.0.0.1:8788/mcp
Project-level .mcp.json example (supports both local and remote server definitions):
{
"mcpServers": {
"dynamic-mcp-local": {
"command": "node",
"args": [
"/ABS/PATH/TO/dynamic-mcp/dist/index.js",
"--transport",
"stdio",
"--profile",
"enterprise"
]
},
"dynamic-mcp-http": {
"type": "http",
"url": "http://127.0.0.1:8788/mcp",
"authorization_token": "${DYNAMIC_MCP_JWT_TOKEN}"
}
}
}
Claude Code supports environment variable expansion in config values, including ${VAR} and ${VAR:-default}.
Use workspace config file: .vscode/mcp.json.
Local stdio example:
{
"servers": {
"dynamic-mcp": {
"command": "node",
"args": [
"/ABS/PATH/TO/dynamic-mcp/dist/index.js",
"--transport",
"stdio",
"--profile",
"mvp"
],
"env": {
"MCP_DYNAMIC_BACKEND": "file",
"MCP_SANDBOX_DOCKER_BIN": "docker"
}
}
}
}
Remote HTTP + JWT header example:
{
"servers": {
"dynamic-mcp-http": {
"url": "http://127.0.0.1:8788/mcp",
"headers": {
"Authorization": "Bearer ${input:dynamic_mcp_jwt}"
}
}
},
"inputs": [
{
"type": "promptString",
"id": "dynamic_mcp_jwt",
"description": "JWT Bearer token for dynamic-mcp"
}
]
}
Server startup example:
pnpm run dev:http
# or:
node /ABS/PATH/TO/dynamic-mcp/dist/index.js --transport http --host 127.0.0.1 --port 8788 --path /mcp
In HTTP mode, the server runs as an independent process/container, and MCP clients connect to the configured URL.
HTTP endpoints:
POST /mcp initialize/continue MCP sessionGET /mcp session streamDELETE /mcp close sessionGET /livez livenessGET /readyz readinessGET /metrics Prometheus metricsJWT behavior in this repo:
MCP_AUTH_MODE=jwt, authentication is enforced on MCP endpoint requests (${MCP_PATH}, default /mcp)./livez, /readyz, /metrics remain anonymous by default.Production recommendation: keep /livez, /readyz, /metrics behind private networking, ingress allowlists, or a gateway even when JWT is enabled.
MCP_TRANSPORT=http
MCP_PROFILE=enterprise
MCP_HOST=0.0.0.0
MCP_PORT=8788
MCP_PATH=/mcp
MCP_DYNAMIC_BACKEND=postgres
MCP_REQUIRE_ADMIN_TOKEN=true
MCP_ADMIN_TOKEN=change-me
MCP_AUTH_MODE=jwt
MCP_AUTH_JWKS_URL=https://your-idp.example.com/.well-known/jwks.json
MCP_AUTH_ISSUER=https://your-idp.example.com/
MCP_AUTH_AUDIENCE=dynamic-mcp
MCP_AUTH_REQUIRED_SCOPES=mcp.invoke
Full variable reference: docs/configuration.md
Production baseline assets:
| Document | Description | | ------------------------------------------------ | ----------------------------------------------------- | | Architecture | System design, module structure, and data flow | | Configuration | All environment variables and CLI arguments | | API Reference | Complete tool, resource, and prompt reference | | Dynamic Tools Guide | How to author and manage dynamic tools | | Security | Security model, sandbox isolation, and authentication | | Deployment | Docker, Compose, and Kubernetes deployment guides | | Production Runbook | Production rollout, verification, and rollback steps |
Core dynamic tool engine:
| Tool | Description |
| --------------------- | ----------------------------------------- |
| dynamic.tool.create | Register a new dynamic tool |
| dynamic.tool.update | Modify an existing tool definition |
| dynamic.tool.delete | Remove a tool |
| dynamic.tool.list | List all registered tools |
| dynamic.tool.get | Get a single tool definition |
| dynamic.tool.enable | Enable or disable a tool |
| run_js_ephemeral | One-off JavaScript execution in a sandbox |
| system.health | Server liveness and uptime |
Everything in MVP, plus:
| Tool / Resource | Description |
| ---------------------------------- | ----------------------------------- |
| sandbox.initialize | Create a reusable container session |
| sandbox.exec | Run shell commands in a session |
| sandbox.run_js | Run JavaScript in a session |
| sandbox.stop | Stop a session container |
| sandbox.session.list | List active sessions |
| system.guard_metrics | Concurrency/rate-limit counters |
| system.runtime_config | Sanitized config snapshot |
| dynamic://metrics/guard | Guard metrics resource |
| dynamic://service/runtime-config | Config snapshot resource |
| dynamic://service/meta | Service metadata resource |
| tool-call-checklist | Reusable pre-call checklist prompt |
{
"tool": {
"name": "text.uppercase",
"description": "Convert text to uppercase",
"code": "const { text } = args;\nreturn { upper: String(text).toUpperCase() };",
"dependencies": [],
"image": "node:lts-slim",
"timeoutMs": 10000
}
}
Then invoke it:
{
"args": { "text": "hello world" }
}
See the Dynamic Tools Guide for full details.
docker build -t dynamic-mcp:latest .
docker run --rm -p 8788:8788 dynamic-mcp:latest
For dynamic tool execution (registered dynamic tools, run_js_ephemeral, sandbox.*) in containerized deployments, the running dynamic-mcp process must have:
docker)Without that access, dynamic tool execution will fail at runtime.
Security note: exposing the host Docker socket gives the container high privilege over the host. Prefer a dedicated remote Docker daemon with network isolation and TLS for production.
docker compose -f deploy/docker-compose.postgres.yml up -d --build
kubectl apply -f deploy/k8s/dynamic-mcp-postgres.yaml
# Optional: HPA + PDB
kubectl apply -f deploy/k8s/dynamic-mcp-scalability.yaml
# Optional: Network policy
kubectl apply -f deploy/k8s/dynamic-mcp-networkpolicy.yaml
pnpm run dev # stdio mode, mvp profile
pnpm run dev:mvp # explicit mvp profile
pnpm run dev:http # HTTP mode
pnpm run dev:enterprise # enterprise profile
pnpm run test # run tests
pnpm run lint # lint
pnpm run typecheck # type check
pnpm run build # compile TypeScript
MIT
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-mcpland-dynamic-mcp/snapshot"
curl -s "https://xpersona.co/api/v1/agents/mcp-mcpland-dynamic-mcp/contract"
curl -s "https://xpersona.co/api/v1/agents/mcp-mcpland-dynamic-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.
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-mcpland-dynamic-mcp/snapshot",
"contractUrl": "https://xpersona.co/api/v1/agents/mcp-mcpland-dynamic-mcp/contract",
"trustUrl": "https://xpersona.co/api/v1/agents/mcp-mcpland-dynamic-mcp/trust"
},
"curlExamples": [
"curl -s \"https://xpersona.co/api/v1/agents/mcp-mcpland-dynamic-mcp/snapshot\"",
"curl -s \"https://xpersona.co/api/v1/agents/mcp-mcpland-dynamic-mcp/contract\"",
"curl -s \"https://xpersona.co/api/v1/agents/mcp-mcpland-dynamic-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-04-17T03:25:47.010Z"
}
},
"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": "dynamic",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "docker",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "sandbox",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "tool",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "runtime",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "nodejs",
"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:dynamic|supported|profile capability:docker|supported|profile capability:sandbox|supported|profile capability:tool|supported|profile capability:runtime|supported|profile capability:nodejs|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": "Mcpland",
"href": "https://github.com/mcpland/dynamic-mcp",
"sourceUrl": "https://github.com/mcpland/dynamic-mcp",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-02-25T03:02:19.743Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "MCP",
"href": "https://xpersona.co/api/v1/agents/mcp-mcpland-dynamic-mcp/contract",
"sourceUrl": "https://xpersona.co/api/v1/agents/mcp-mcpland-dynamic-mcp/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-02-25T03:02:19.743Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1 GitHub stars",
"href": "https://github.com/mcpland/dynamic-mcp",
"sourceUrl": "https://github.com/mcpland/dynamic-mcp",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-02-25T03:02:19.743Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://xpersona.co/api/v1/agents/mcp-mcpland-dynamic-mcp/trust",
"sourceUrl": "https://xpersona.co/api/v1/agents/mcp-mcpland-dynamic-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 dynamic-mcp and adjacent AI workflows.