Skip to content

egoughnour/tool-disco

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

tool-disco

TypeScript MCP License

A tool discovery-oriented MCP (Model Context Protocol) server that matches tools to natural language goals. It integrates with Azure DevOps to discover tools documented in wikis and uses code-graph-rag for code analysis.

Features

  • Natural Language Tool Discovery: Describe what you want to accomplish, and tool-disco finds matching tools
  • Azure DevOps Integration: Scans organization wikis for tool documentation with front matter metadata
  • Code Graph Integration: Ingests repositories via code-graph-rag-mcp for code analysis
  • Tool Composition: Automatically generates multi-tool workflows
  • Proxy Testing: Tests tool candidates using lightweight proxies, scripts, and simple models

Installation

npm install
npm run build

Usage

As an MCP Server

Add to your MCP client configuration:

{
  "mcpServers": {
    "tool-disco": {
      "command": "node",
      "args": ["/path/to/tool-disco/dist/index.js"]
    }
  }
}

Available Tools

discover_tools

Discover tools matching a natural language goal.

{
  "goal": "I need to process CSV files and generate reports",
  "context": "Working with sales data",
  "constraints": ["Must handle large files", "Output as PDF"]
}

scan_azure_devops

Scan an Azure DevOps organization for repositories with wikis and extract tool metadata.

{
  "organization": "https://dev.azure.com/myorg",
  "pat": "your-personal-access-token",
  "project": "optional-project-name"
}

ingest_repo

Ingest a repository into the code graph for tool discovery.

{
  "repoUrl": "https://github.com/org/repo",
  "repoName": "my-repo"
}

test_composition

Test a tool composition against the discovery goal.

{
  "compositionId": "composed-tool1-tool2",
  "inputs": { "file": "data.csv" }
}

list_candidates

List all registered tool candidates.

get_discovery_stats

Get statistics about discovered tools and ingested repositories.

Wiki Front Matter Format

Document tools in Azure DevOps wikis using YAML front matter:

---
toolName: data_processor
description: Processes data files and extracts insights
tags: data,processing,etl
timeout: 5000
implementation: scripts/processor.js
inputs:
  file:
    type: string
    description: Path to the input file
---

# Data Processor

Documentation for the data processor tool...

Architecture

   graph TB
       subgraph "Tool Disco MCP Server"
           ADO[Azure DevOps Integration]
           CG[Code Graph Integration]
           TD[Tool Discovery]
           PT[Proxy Tester]
           ADO --> TD
           CG --> TD
           TD --> PT
       end
Loading

Development

# Install dependencies
npm install

# Build
npm run build

# Run tests
npm test

# Type check
npm run lint

About

a tool discovery-oriented mcp server chain

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors