DCAP Disco
Connects to the DCAP intelligence stream to discover and cache tools in real time, and enables autonomous tool acquisition by allowing agents to call any discovered tool without manual configuration, including automatic x402 payment handling.
README
DCAP Disco - Real-Time Tool Discovery MCP Server
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.
Features
- DCAP Stream Connection: Connects to
ws://159.89.110.236:10191for real-time tool intelligence - FIFO Cache: Maintains up to 100 most recently discovered tools with deduplication
- MCP Tools: Exposes 7 tools for querying AND CALLING discovered tools
- Autonomous Tool Acquisition: Call ANY discovered tool at runtime without manual configuration
- x402 Payment Support: Automatic payment creation for paid tools using pipe402
- Multi-Transport Support: SSE, HTTP streaming for remote MCP servers
- Auto-Reconnect: Automatically reconnects if the DCAP stream connection drops
- Real-time Updates: Processes semantic_discover, perf_update, observed_sequence, and error_pattern messages
Installation
-
Clone this repository:
git clone https://github.com/boorich/dcap_disco.git cd dcap_disco -
Install dependencies:
pip install -r requirements.txt -
Configure environment (optional, for x402 payments):
# Create .env file echo "X402_PRIVATE_KEY=0x..." > .env # Or export directly export X402_PRIVATE_KEY=0x... -
Ensure pipe402 is installed (for x402 payment support):
which pipe402 # Should return path to pipe402 binary
Usage
Running the DCAP Disco MCP Server
python server.py
The server will:
- Connect to the DCAP intelligence stream
- Start caching tool discoveries and performance data
- Expose MCP tools for querying the cached data
Configuring in Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"dcap-disco": {
"command": "python",
"args": ["/absolute/path/to/server.py"]
}
}
}
Configuring in Cursor
Add to your MCP settings:
{
"mcpServers": {
"dcap-disco": {
"command": "python",
"args": ["/absolute/path/to/server.py"]
}
}
}
Available MCP Tools
list_discovered_tools
Get 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_capability
Search for tools by keyword in their capabilities.
Parameters:
query(string): Search keywords
Returns: Matching tools
get_tool_details
Get detailed information about a specific tool.
Parameters:
tool_name(string): Name of the tool
Returns: Tool metadata with performance history
get_recent_activity
Get recent performance updates from all tools.
Parameters:
limit(number, optional): Max results (default: 20, max: 100)tool_name(string, optional): Filter by specific tool
Returns: Recent performance updates
get_tool_sequences
Get observed tool execution sequences (chains).
Parameters:
limit(number, optional): Max sequences (default: 10)
Returns: Tool usage patterns
get_stream_status
Get DCAP stream connection status.
Returns: Connection stats and cache size
call_discovered_tool ⭐ NEW
Call 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:
- Looks up the tool in cache (from semantic_discover messages)
- Creates x402 payment if needed (using pipe402)
- Establishes MCP connection (SSE/HTTP)
- Calls the remote tool
- Returns result
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 arguments
Returns: 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!
Environment Variables
Required for x402 Payment
X402_PRIVATE_KEY: Private key for creating x402 payments (hex string starting with0x)
Optional Bearer Tokens
For tools requiring bearer token auth, set:
<SERVER_ID>_TOKEN: Token for specific server (e.g.,ROBONET_MCP_TOKEN)
Architecture
┌─────────────────────────────────────────────────────────────────┐
│ 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) │
└──────────────────┘ └──────────────────┘
What Makes This Special?
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.
Use Cases
1. Zero-Config Tool Access
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!
2. Multi-Server Orchestration
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.
3. Real-Time Network Intelligence
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.
License
MIT License
Contributing
Pull requests welcome! For major changes, please open an issue first.
Contact
Questions? Reach out via [empeamtk@googlemail.com]
Ready to show VCs the future of autonomous agents? 🚀
This is what happens when you combine:
- DCAP (the open protocol for tool discovery)
- x402 (streaming micropayments for tool usage)
- MCP (the standard for agent-tool communication)
Result: Agents that can discover and use tools autonomously, with no manual configuration.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。