MCP Ambassador
by WynnD
The `mcp-ambassador` is a specialized MCP server that helps AI agents discover other relevant MCP servers by generating search instructions. It analyzes requests and returns structured instructions for the calling agent to use its own web search capabilities to find MCP servers tailored to the user's needs.
Last updated: N/A
MCP Ambassador
mcp-ambassador
is a specialized MCP (Multi-Capability Provider) server designed to assist AI agents in discovering other relevant MCP servers.
Purpose
Instead of performing searches itself, mcp-ambassador
acts as a search instruction generator. When an AI agent (like a chatbot or coding assistant) identifies a potential need for tools related to the user's current task or conversation context, it can call the mcp-ambassador
.
The ambassador analyzes the request (e.g., "Find tools for working with FL Studio") and returns structured instructions, including specific search queries, telling the calling agent how to use its own web search capabilities (like a Brave Search or Google Search MCP) to find potentially relevant MCP servers.
This allows the primary AI agent to leverage its existing tools more effectively for discovering new MCPs tailored to the user's immediate needs.
Workflow
- User & Primary Agent: A user interacts with their primary AI agent.
- Need Identification (Agent): The agent detects a topic (e.g., "Data analysis with Python") where specialized MCP tools might be helpful but aren't currently available to the agent.
- Agent Calls Ambassador: The agent calls the
mcp-ambassador
'sdiscover_servers
tool with atask_description
(e.g.,{"task_description": "Data analysis with Python"}
). - Ambassador Generates Instructions: The ambassador returns a Markdown string containing search queries (e.g.,
"MCP server for Data analysis with Python"
) and instructions for the agent. - Agent Executes Search: The agent uses its own available web search tool, executes the provided queries, and analyzes the results.
- Agent Presents Findings: The agent summarizes the findings and recommends potential MCP servers to the user.
Installation
# Clone the repository
git clone https://github.com/WynnD/mcp-ambassador.git
cd mcp-ambassador
# Install dependencies
npm install
(Note: Publishing to npm is planned for easier installation via npm install mcp-ambassador
)
Usage
Running the Server
You can run the server directly using tsx
(which handles TypeScript compilation on the fly):
npx tsx src/index.ts
This will start the MCP server, listening via standard input/output (stdio
).
Registering with an MCP Client
Add the following entry to your MCP client's configuration file (e.g., mcp.json
) to make it discoverable:
{
"mcpServers": {
"mcp-ambassador": {
"command": "npx",
// Adjust the path to where you cloned the repository
"args": ["tsx", "/path/to/your/mcp-ambassador/src/index.ts"]
}
// ... other servers
}
}
Example Tool Call
An AI agent would call the tool like this (using a hypothetical MCP client):
const result = await mcpClient.callTool('mcp-ambassador', 'discover_servers', {
task_description: 'Working with FL Studio audio projects'
});
console.log(result);
Example Output
The tool would return a Markdown string similar to this:
### Action Required: Search for MCP Servers
I have identified a potential need related to "Working with FL Studio audio projects". To find relevant MCP servers, please perform the following actions using your available web search tool (e.g., `brave_web_search`, `google_search`):
1. **Execute Search Query 1:**
```
MCP server for Working with FL Studio audio projects
```
2. **(Optional) Execute Search Query 2 for broader results:**
```
Tools to help with Working with FL Studio audio projects
```
3. **Analyze Results:** Look for results mentioning "MCP", specific tool names, or links to code repositories (like GitHub) that seem relevant to "Working with FL Studio audio projects".
**Note:** If you do not have a web search tool available, please inform the user and suggest installing one (e.g., Brave Search MCP).
Development
- Implementation Plan: See IMPLEMENTATION_PLAN.md for detailed design and future plans.
- Linting/Formatting: (Add setup instructions if using ESLint/Prettier)
- Testing: (Add instructions for running tests once implemented)
Contributing
(Add contribution guidelines if applicable)
License
This project is licensed under the MIT License - see the LICENSE file for details (if you add one).