MCP Runtime Tool Extensions

Add validated third-party MCP tools at server startup and load them from SDK plugin directories with `dots mcp --plugin`.

Overview

Description

Runtime Tool Extensions let developers add domain-specific MCP tools without modifying the built-in Dots catalog. SDK defineMcpTool definitions are normalized into runtime registrations, appended after built-ins through extraTools, and rejected on name collision. The CLI's repeatable --plugin option loads typed entry points from plugin manifests before the stdio server starts.

The workflow is designed for SDK plugin authors. It uses the same authenticated, company-scoped service contracts as the rest of Dots, so terminal or protocol convenience never creates a second source of truth. Inputs are validated before or at the route boundary, and outputs preserve identifiers and structured details needed for a reliable next step.

Selling Points

  • Provides a formal external registration point for custom agent tools.
  • Keeps built-in names protected through explicit collision failures.
  • Supports TypeScript plugin entries in the bundled CLI development host.
  • Makes runtime tools directly discoverable and callable through standard MCP.
  • Uses the SDK manifest and validation model shared with other plugin slots.

User Story

A plugin author scaffolds a defineMcpTool entry, implements a domain lookup, and launches dots mcp --plugin ./plugin. Their coding host discovers the custom tool beside the built-ins and invokes it with the validated input contract. The result is a concrete, inspectable outcome that another person or automation can continue from without reconstructing hidden state.

Extension Surface

The feature is pluggable: packages/mcp/src/runtime-tool.ts converts SDK definitions and packages/mcp/src/server.ts appends injected extraTools; packages/cli/src/commands/mcp.ts provides the external load path. The rating reflects the most-open supported seam that is true for this capability, not a transitive implementation detail. The cited path is the operational proof: consumers can use the documented seam, while unsupported changes still require a core release.

Capabilities & Limits

  • Capability: Validated custom tool definitions and runtime registration.
  • Capability: Repeatable plugin-directory loading from the canonical MCP launcher.
  • Capability: Duplicate-name refusal and standard direct tool discovery and invocation.
  • Limit: Runtime tools are development/composition-root scoped, are not batch-dispatchable, and operator-scoped MCP slots are not hosted-Marketplace distributable.

The limit is intentional product truth rather than missing documentation. Calls also remain subject to authentication, tenant selection, schema validation, and the permissions enforced by the authoritative service.

Implementation Map

  • packages/mcp/src/runtime-tool.ts
  • packages/mcp/src/server.ts
  • packages/cli/src/commands/mcp.ts

Properties

Property
Value
product
dots-platform
extensibility
pluggable
module
MCP, SDK, CLI
packages
mcp, sdk, cli
status
shipped
surface
mcp
summary
Add validated third-party MCP tools at server startup and load them from SDK plugin directories with `dots mcp --plugin`.

Connections

MCP Runtime Tool Extensions · Explore connections

  • extendstoMCP Built-In Vault Tool Catalog
  • implemented bytopackages/cli/src/commands/mcp.ts
  • implemented bytopackages/mcp/src/server.ts
  • implemented bytopackages/mcp/src/runtime-tool.ts

Connected Records4

Extends
Implemented by
packages/cli/src/commands/mcp.ts
packages/mcp/src/runtime-tool.ts
packages/mcp/src/server.ts
4 connections.