AI模型协议工具

提供与AI模型通信的标准化协议工具,支持Power Platform CLI、Graph API和Azure REST API的集成使用。

  • by rajyraman
  • TypeScript
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 rajyraman/genaiscript-pac-az-mcp

使用说明

Power Platform CLI、Graph API和Azure REST API-MCP

此存储库包含用于使用Graph API的模型上下文协议(MCP)工具、使用Azure CLI的Azure REST API以及使用Power Platform CLI的Power Platform管理API/Dataverse API。

先决条件

  1. VSCode内部人员-2025年3月版或克劳德桌面版
  2. 如果您没有使用DevContainer选项,请在本地计算机上安装Azure CLI和Power Platform CLI并进行身份验证。
  3. 开发容器CLI,如果你想在开发容器中运行MCP。
  4. 码头工人,如果你想运行Dev Containers。

什么是GenAIScript? 🤖

GenAIScript是一个框架,使您能够与AI模型(甚至是本地模型)进行通信。GenAIScript可以使用MCP工具,也可以充当MCP服务器。

模型上下文协议(MCP)📋

MCP规范的创建者Anthropic就是这样定义的 模型上下文协议

MCP是一个开放协议,它规范了应用程序如何向LLM提供上下文。将MCP想象成AI应用程序的USB-C端口。正如USB-C提供了一种将设备连接到各种外围设备和配件的标准化方式一样,MCP提供了一个将AI模型连接到不同数据源和工具的标准化方法。

安装🛠️

  • 安装NodeJS
  • 安装 genaiscript CLI使用 npm install -g genaiscript,或使用 npx genaiscript

用法💻

如果您安装了2025年3月版本的VSCode Insiders,您应该能够在本地运行GenAIScript MCP服务器,以在本地计算机上安装工具版本。

mcp.json 是配置MCP服务器的地方。您甚至不需要使用这种方法克隆此仓库,因为GenAIScript可以在后台克隆仓库,以便您使用工具。如果您正在使用 --remote 标志,您根本不需要安装GenAIScript扩展,因为npx会为您引入所有内容。

已知问题-Windows上的副本⚠️

GitHub Copilot似乎不喜欢CLI试图在VSCode Insider中进行身份验证。如果您尝试这样做,Power Platform CLI将失败 The requested service provider could not be loaded or initialized. 错误。

您有两个选择:

  1. 在DevContainers中运行整个仓库。此仓库指定了.devcontainer.json配置文件。如果使用此选项,则可以创建一个名为的新文件 genaiscript.env 在 .devcontainer 文件夹。使用以下内容作为示例。
PAC_CLIENT_ID=2caa17e6-884b-473b-80c5-c05d8859a2fa
PAC_CLIENT_SECRET=
ENVIRONMENT_URL=https://abc.crm6.dynamics.com
TENANT_ID=
AZ_CLIENT_ID=aba9829f-6288-44d7-9168-53eca9a1f4a5
AZ_CLIENT_SECRET=
DOCKER_CONTAINER=true
  1. 使用Claude Desktop运行MCP。Claude Desktop在Windows上不会遇到此问题

Claude桌面配置🧠

Windows配置

{
    "globalShortcut": "Ctrl+Space",
    "mcpServers": {
        "genaiscript-mcp": {
            "type": "stdio",
            "command": "cmd",
            "args": [
                "/c",
                "npx",
                "genaiscript",
                "mcp",
                "--remote",
                "https://github.com/rajyraman/genaiscript-pac-az-mcp/",
                "--remote-branch",
                "main",
                "--groups",
                "mcp",
                "--startup",
		"mcp_resources"
            ],
            "env": {
                "DEBUG": "*"
            }
        }
    }
}

MacOS/Linux配置

{
    "globalShortcut": "Ctrl+Space",
    "mcpServers": {
        "genaiscript-mcp": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "genaiscript",
                "mcp",
                "--remote",
                "https://github.com/rajyraman/genaiscript-pac-az-mcp/",
                "--remote-branch",
                "main",
                "--groups",
                "mcp",
                "--startup",
		"mcp_resources"
            ],
            "env": {
                "DEBUG": "*"
            }
        }
    }
}

VSCode配置🧩

VSCode Insiders中的MCP配置是通过.vcode文件夹中的MCP.json文件进行的。 Windows配置

直接运行npx似乎会在Windows中产生问题。所以,我们必须使用 cmd 启动 npx.

{
    "servers": {
        "genaiscript-mcp-remote": {
            "type": "stdio",
            "command": "cmd",
            "args": [
                "/c",
                "npx",
                "genaiscript",
                "mcp",
                "--remote",
                "https://github.com/rajyraman/genaiscript-pac-az-mcp/",
                "--remote-branch",
                "main",
                "--groups",
                "mcp"
            ],
            "env": {
                "DEBUG": "*"
            }
            // "envFile": "${workspaceFolder}/.env"
        }
    }
}

MacOS/Linux配置

{
    "servers": {
        "genaiscript-mcp-remote": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "genaiscript",
                "mcp",
                "--remote",
                "https://github.com/rajyraman/genaiscript-pac-az-mcp/",
                "--remote-branch",
                "main",
                "--groups",
                "mcp"
            ],
            "env": {
                "DEBUG": "*"
            }
            // "envFile": "${workspaceFolder}/.env"
        }
    }
}

您可以通过单击“开始”链接启动MCP服务器。如果它已经在运行,您将看到一个正在运行的指示器。

提示文件

使用 az.prompt.md 针对任何Azure REST API或Graph API问题。

使用 pac.prompt.md 对于任何Power Platform问题。

您可以在VSCode中使用如下提示。

在Claude Desktop中,您可以将提示文件上传到会话。提示作为资源提供。为你打算问克劳德的问题选择合适的提示。如果需要,你可以选择两者,但最好选择一个,在选择两者之前先测试一下体验。

下面是如何在GitHub Copilot聊天中使用它。

示例1-查询Power Platform环境详细信息

示例2-查询Azure订阅详细信息

示例3-从Graph API查询详细信息

示例4-在Claude Desktop中查询Power Platform环境