这是一个MCP(模型上下文协议)服务器实现,它连接到Microsoft Copilot Studio代理,允许Copilot Studio代理与任何兼容MCP的客户端无缝集成。
https://github.com/user-attachments/assets/19fdd17b-2837-4797-8653-fe9439de355f
此MCP服务器公开了以下工具:
query_agent:向Copilot Studio代理发送查询并接收响应
src/main.py文件中的agent_definitions以包含您的代理详细信息。agent_definitions应包括以下字段:
name:代理名称description:代理的简要描述,供MCP客户端识别代理的责任。服务器需要以下环境变量:
DIRECTLINE_ENDPOINT:您的Copilot Studio代理的DirectLine API端点COPILOT_AGENT_SECRET:用于通过DirectLine API与Copilot Studio代理进行身份验证的机器人密钥您可以在项目根目录中的.env文件中设置这些变量,或通过系统环境变量进行配置。
uv包管理器(推荐)或pip# 使用uv设置环境
uv venv
.venv\Scripts\activate # 在Windows上
source .venv/bin/activate # 在macOS/Linux上
# 安装依赖项
uv sync
如果您更喜欢使用pip:
# 创建虚拟环境
python -m venv .venv
.venv\Scripts\activate # 在Windows上
source .venv/bin/activate # 在macOS/Linux上
# 安装依赖项
pip install -e .
激活环境后,您可以使用MCP Inspector本地运行MCP服务器。
mcp dev src/main.py
您将被提示安装@modelcontextprotocol/inspector包。选择y进行安装。

启动MCP Inspector并连接到MCP服务器。
导航到Tools并点击List Tools查看MCP服务器中的所有可用工具。
选择query_agent工具向您的Copilot Studio代理发送查询。

要与Claude Desktop一起使用,请在配置文件中添加以下内容:
File > Settings > Developer > Edit Config。claude_desktop_config.json文件,并在mcpServers部分添加以下配置。您可以使用uv、python或docker来运行服务器。

uv运行{
"mcpServers": {
"agent-name": {
"command": "uv", // 如果uv不在您的PATH中,您可能需要使用完整的路径。使用`which uv`找到路径。
"args": [
"--directory",
"<PATH_TO_THE_PARENT_FOLDER>",
"run",
"mcp",
"run",
"<PATH_TO_THE_PARENT_FOLDER>/src/main.py"
],
"env": {
"DIRECTLINE_ENDPOINT": "endpoint-url",
"COPILOT_AGENT_SECRET": "secret-key"
}
}
}
}
python运行在设置虚拟环境并安装必要的包之后,您可以使用以下命令运行服务器:
{
"mcpServers": {
"agent-name": {
"command": "<PATH_TO_VENV>/bin/python",
"args": [
"<PATH_TO_THE_PARENT_FOLDER>/src/main.py"
],
"env": {
"DIRECTLINE_ENDPOINT": "endpoint-url",
"COPILOT_AGENT_SECRET": "secret-key"
}
}
}
}
或者,您可以通过运行以下命令(在虚拟环境中)将服务器安装到Claude Desktop:
mcp install src/main.py -f .env
docker运行您可以使用Docker作为容器运行MCP服务器。确保您的机器上已安装并运行Docker。
构建Docker镜像:
docker build -t mcp-server-copilot-agent .
在您的Claude Desktop配置文件中添加以下内容:
{
"mcpServers": {
"agent-name": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p", "8000:8000",
"--env-file", "<PATH_TO_THE_PARENT_FOLDER>/.env",
"mcp-server-copilot-agent"
]
}
}
}
一旦您将Claude Desktop配置为
此服务器遵循MCP协议规范,可以与任何兼容MCP的客户端一起使用。请参阅您的客户端文档,了解如何连接到外部MCP服务器的具体说明。
要为此项目做出贡献,请设置一个开发环境:
# 安装开发依赖项
uv sync -e dev
该项目使用Ruff进行代码检查:
# 运行代码检查器
ruff check .