Dcap Disco — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Dcap Disco (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
This project implements a DCAP (Dynamic Capability Acquisition Protocol) MCP server that connects to the DCAP intelligence stream and provides real-time access to tool discovery data.
ws://159.89.110.236:10191 for real-time tool intelligence git clone https://github.com/boorich/dcap_disco.git
cd dcap_disco pip install -r requirements.txt # Create .env file
echo "X402_PRIVATE_KEY=0x..." > .env
# Or export directly
export X402_PRIVATE_KEY=0x... which pipe402 # Should return path to pipe402 binarypython server.pyThe server will:
Add to your claude_desktop_config.json:
{
"mcpServers": {
"dcap-disco": {
"command": "python",
"args": ["/absolute/path/to/server.py"]
}
}
}Add to your MCP settings:
{
"mcpServers": {
"dcap-disco": {
"command": "python",
"args": ["/absolute/path/to/server.py"]
}
}
}list_discovered_toolsGet all tools currently in the cache (up to 100 most recent).
Returns: List of tool discovery messages with capabilities, endpoints, and stats.
search_tools_by_capabilitySearch for tools by keyword in their capabilities.
Parameters:
query (string): Search keywordsReturns: Matching tools
get_tool_detailsGet detailed information about a specific tool.
Parameters:
tool_name (string): Name of the toolReturns: Tool metadata with performance history
get_recent_activityGet recent performance updates from all tools.
Parameters:
limit (number, optional): Max results (default: 20, max: 100)tool_name (string, optional): Filter by specific toolReturns: Recent performance updates
get_tool_sequencesGet observed tool execution sequences (chains).
Parameters:
limit (number, optional): Max sequences (default: 10)Returns: Tool usage patterns
get_stream_statusGet DCAP stream connection status.
Returns: Connection stats and cache size
call_discovered_tool ⭐ NEWCall a discovered tool at runtime - enables autonomous tool acquisition!
This is the killer feature: you can invoke ANY tool discovered via DCAP without manual configuration. The server:
Parameters:
tool_identifier (string): Format "tool_name@server_id" (e.g., "validate_daml_business_logic@canton-mcp") or just "tool_name"arguments (object): Tool-specific argumentsReturns: Tool execution result
Example:
{
"tool_identifier": "validate_daml_business_logic@canton-mcp",
"arguments": {
"daml_code": "template MyContract with ..."
}
}Demo Flow:
1. Canton MCP broadcasts semantic_discover
→ DCAP Disco caches: validate_daml_business_logic@canton-mcp
2. Agent queries: list_discovered_tools
→ Sees: validate_daml_business_logic@canton-mcp
3. Agent calls: call_discovered_tool
→ DCAP Disco:
- Creates x402 payment (pipe402)
- Connects to Canton MCP (SSE)
- Calls validate_daml_business_logic
- Returns result
4. Agent gets result - no manual configuration needed!X402_PRIVATE_KEY: Private key for creating x402 payments (hex string starting with 0x)For tools requiring bearer token auth, set:
<SERVER_ID>_TOKEN: Token for specific server (e.g., ROBONET_MCP_TOKEN)┌─────────────────────────────────────────────────────────────────┐
│ DCAP Disco MCP Server │
│ │
│ ┌──────────────┐ ┌─────────────┐ ┌───────────────┐ │
│ │ DCAP Stream │─────▶│ Cache │─────▶│ MCP Tools │ │
│ │ Client │ │ (Discover) │ │ (Query/List) │ │
│ └──────────────┘ └─────────────┘ └───────────────┘ │
│ │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ Tool Connection Manager (NEW!) │ │
│ │ │ │
│ │ ┌──────────┐ ┌──────────┐ ┌──────────────────────┐ │ │
│ │ │ x402 │ │ MCP │ │ Dynamic Tool Call │ │ │
│ │ │ Payment │─▶│ Client │─▶│ (SSE/HTTP/stdio) │ │ │
│ │ │ (pipe402)│ │ (httpx) │ │ │ │ │
│ │ └──────────┘ └──────────┘ └──────────────────────┘ │ │
│ └──────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘
│ ▲
│ discovers │ invokes
▼ │
┌──────────────────┐ ┌──────────────────┐
│ Canton MCP │ │ Canton MCP │
│ (broadcasts) │ │ (executes) │
└──────────────────┘ └──────────────────┘Traditional MCP Setup:
// You must manually configure EVERY tool server:
{
"mcpServers": {
"canton-mcp": { "command": "...", "args": [...] },
"robonet-mcp": { "command": "...", "args": [...] },
"workbench-mcp": { "command": "...", "args": [...] }
// ... manually add 100 more ...
}
}With DCAP Disco:
// You configure ONLY the dcap-disco server:
{
"mcpServers": {
"dcap-disco": { "command": "python", "args": ["server.py"] }
}
}
// Now you can call ANY tool discovered on the network!
// No manual configuration. Just discovery + acquisition.This is "Google for AI agents" - autonomous capability acquisition at runtime.
Agent: "What DAML validation tools are available?"
DCAP Disco: "validate_daml_business_logic@canton-mcp"
Agent: "Call it with this code..."
DCAP Disco:
- Creates x402 payment automatically
- Connects to Canton MCP
- Calls tool
- Returns result
NO MANUAL CONFIGURATION!Agent task: "Build a DAML contract AND test a trading strategy"
Agent:
1. Calls validate_daml_business_logic@canton-mcp
→ DCAP Disco connects to Canton MCP (first time)
2. Calls get_strategy_code@robonet-mcp
→ DCAP Disco connects to Robonet MCP (first time)
All automatic. All paid via x402. All discovered via DCAP.Show VC:
- Stream of tools being discovered (semantic_discover)
- Agent querying available tools (list_discovered_tools)
- Agent calling tools dynamically (call_discovered_tool)
- x402 payments flowing
- Intelligence emerging from usage patterns
THIS IS THE FUTURE OF MCP.MIT License
Pull requests welcome! For major changes, please open an issue first.
Questions? Reach out via [[email protected]]
Ready to show VCs the future of autonomous agents? 🚀
This is what happens when you combine:
Result: Agents that can discover and use tools autonomously, with no manual configuration.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.