mcp-configure

github/awesome-copilot · updated Apr 8, 2026

MDX-style export adds YAML metadata + attribution linking explainx.ai and this canonical listing URL.

$npx skills add https://github.com/github/awesome-copilot --skill mcp-configure
0 commentsdiscussion
summary

Configure your Dataverse environment for GitHub Copilot's MCP server integration.

  • Supports both global (all projects) and project-scoped configuration paths with automatic directory creation
  • Auto-discovers Dataverse environments from your Azure account via Power Apps API, or accepts manual URL entry as fallback
  • Generates unique server names from organization identifiers and registers servers in the MCP configuration file with GA or Preview endpoint options
  • Validates existing confi
skill.md

Configure Dataverse MCP for GitHub Copilot

This skill configures the Dataverse MCP server for GitHub Copilot with your organization's environment URL. Each organization is registered with a unique server name based on the org identifier (e.g., DataverseMcporgbc9a965c). If the user provided a URL it is: $ARGUMENTS.

Instructions

0. Ask for MCP scope

Ask the user whether they want to configure the MCP server globally or for this project only:

Would you like to configure the Dataverse MCP server:

  1. Globally (available in all projects)
  2. Project-only (available only in this project)

Based on their choice, set the CONFIG_PATH variable:

  • Global: ~/.copilot/mcp-config.json (use the user's home directory)
  • Project: .mcp/copilot/mcp.json (relative to the current working directory)

Store this path for use in steps 1 and 6.

1. Check already-configured MCP servers

Read the MCP configuration file at CONFIG_PATH (determined in step 0) to check for already-configured servers.

The configuration file is a JSON file with the following structure:

{
  "mcpServers": {
    "ServerName1": {
      "type": "http",
      "url": "https://example.com/api/mcp"
    }
  }
}

Or it may use "servers" instead of "mcpServers" as the top-level key.

Extract all url values from the configured servers and store them as CONFIGURED_URLS. For example:

["https://orgfbb52bb7.crm.dynamics.com/api/mcp"]

If the file doesn't exist or is empty, treat CONFIGURED_URLS as empty ([]). This step must never block the skill.

2. Ask how to get the environment URL

Ask the user:

How would you like to provide your Dataverse environment URL?

  1. Auto-discover — List available environments from your Azure account (requires Azure CLI)
  2. Manual entry — Enter the URL directly

Based on their choice:

  • If Auto-discover: Proceed to step 2a
  • If Manual entry: Skip to step 2b

2a. Auto-discover environments

Check prerequisites:

  • Verify Azure CLI (az) is installed (check with which az or where az on Windows)
  • If not installed, inform the user and fall back to step 2b

Make the API call:

  1. Check if the user is logged into Azure CLI:

    az account show
    

    If this fails, prompt the user to log in:

    az login
    
  2. Get an access token for the Power Apps API:

    az account get-access-token --resource https://service.powerapps.com/ --query accessToken --output tsv
    
  3. Call the Power Apps API to list environments:

    GET https://api.powerapps.com/providers/Microsoft.PowerApps/environments?api-version=2016-11-01
    Authorization: Bearer {token}
    Accept: application/json
    
  4. Parse the JSON response and filter for environments where properties?.linkedEnvironmentMetadata?.instanceUrl is not null.

  5. For each matching environment, extract:

    • properties.displayName as displayName
    • properties.linkedEnvironmentMetadata.instanceUrl (remove trailing slash) as instanceUrl
  6. Create a list of environments in this format:

    [
      { "displayName": "My Org (default)", "instanceUrl": "https://orgfbb52bb7.crm.dynamics.com" },
      { "displayName": "Another Env", "instanceUrl": "https://orgabc123.crm.dynamics.com" }
    ]
    

If the API call succeeds, proceed to step 3.

If the API call fails (user not logged in, network error, no environments found, or any other error), tell the user what went wrong and fall back to step 2b.

2b. Manual entry — ask for the URL

Ask the user to provide their environment URL directly:

Please enter your Dataverse environment URL.

Example: https://myorg.crm10.dynamics.com

You can find this in the Power Platform Admin Center under Environments.

Then skip to step 4.

3. Ask the user to select an environment

Present the environments as a numbered list. For each environment, check whether any URL in CONFIGURED_URLS starts with that environment's instanceUrl — if so, append (already configured) to the line.

I found the following Dataverse environments on your account. Which one would you like to configure?

  1. My Org (default) — https://orgfbb52bb7.crm.dynamics.com (already configured)
  2. Another Env — https://orgabc123.crm.dynamics.com

Enter the number of your choice, or type "manual" to enter a URL yourself.

If the user selects an already-configured environment, confirm that they want to re-register it (e.g. to change the endpoint type) before proceeding.

If the user types "manual", fall back to step 2b.

4. Confirm the selected URL

Take the instanceUrl from the chosen environment (or the manually entered URL) and strip any trailing slash. This is USER_URL for the remainder of the skill.

5. Confirm if the user wants "Preview" or "Generally Available (GA)" endpoint

Ask the user:

Which endpoint would you like to use?

  1. Generally Available (GA)/api/mcp (recommended)
  2. Preview/api/mcp_preview (latest features, may be unstable)

Based on their choice:

  • If GA: set MCP_URL to {USER_URL}/api/mcp
  • If Preview: set MCP_URL to {USER_URL}/api/mcp_preview

6. Register the MCP server

Update the MCP configuration file at CONFIG_PATH (determined in step 0) to add the new server.

Generate a unique server name from the USER_URL:

  1. Extract the subdomain (organization identifier) from the URL
    • Example: https://orgbc9a965c.crm10.dynamics.comorgbc9a965c
  2. Prepend DataverseMcp to create the server name
    • Example: DataverseMcporgbc9a965c

This is the SERVER_NAME.

Update the configuration file:

  1. If CONFIG_PATH is for a project-scoped configuration (.mcp/copilot/mcp.json), ensure the directory exists first:

    mkdir -p .mcp/copilot
    
  2. Read the existing configuration file at CONFIG_PATH, or create a new empty config if it doesn't exist:

    {}
    
  3. Determine which top-level key to use:

    • If the config already has "servers", use that
    • Otherwise, use "mcpServers"
  4. Add or update the server entry:

    {
      "mcpServers": {
        "{SERVER_NAME}": {
          "type": "http",
          "url": "{MCP_URL}"
        }
      }
    }
    
  5. Write the updated configuration back to CONFIG_PATH with proper JSON formatting (2-space indentation).

Important notes:

  • Do NOT overwrite other entries in the configuration file
  • Preserve the existing structure and formatting
  • If SERVER_NAME already exists, update it with the new MCP_URL

Proceed to step 7.

7. Confirm success and instruct restart

Tell the user:

✅ Dataverse MCP server configured for GitHub Copilot at {MCP_URL}.

Configuration saved to: {CONFIG_PATH}

IMPORTANT: You must restart your editor for the changes to take effect.

Restart your editor or reload the window, then you will be able to:

  • List all tables in your Dataverse environment
  • Query records from any table
  • Create, update, or delete records
  • Explore your schema and relationships

8. Troubleshooting

If something goes wrong, help the user check:

  • The URL format is correct (https://<org>.<region>.dynamics.com)
  • They have access to the Dataverse environment
  • The environment URL matches what's shown in the Power Platform Admin Center
  • Their Environment Admin has enabled "Dataverse CLI MCP" in the Allowed Clients list
  • Their Environment has Dataverse MCP enabled, and if they're trying to use the preview endpoint that is enabled
  • For project-scoped configuration, ensure the .mcp/copilot/mcp.json file was created successfully
  • For global configuration, check permissions on the ~/.copilot/ directory
how to use mcp-configure

How to use mcp-configure on Cursor

AI-first code editor with Composer

1

Prerequisites

Before installing skills in Cursor, ensure your development environment meets these requirements:

  • Cursor installed and configured on your development machine
  • Node.js version 16.0+ with npm package manager (verify with node --version)
  • Active project directory or workspace where you want to add mcp-configure
2

Execute installation command

Execute the skills CLI command in your project's root directory to begin installation:

$npx skills add https://github.com/github/awesome-copilot --skill mcp-configure

The skills CLI fetches mcp-configure from GitHub repository github/awesome-copilot and configures it for Cursor.

3

Select Cursor when prompted

The CLI will show a list of available agents. Use arrow keys to navigate and space to select Cursor:

◆ Which agents do you want to install to?
│ ── Universal (.agents/skills) ── always included ────
│ • Amp
│ • Antigravity
│ • Cline
│ • Codex
│ ●Cursor(selected)
│ • Cursor
│ • Windsurf
4

Verify installation

Confirm successful installation by checking the skill directory location:

.cursor/skills/mcp-configure

Reload or restart Cursor to activate mcp-configure. Access the skill through slash commands (e.g., /mcp-configure) or your agent's skill management interface.

Security & Verification Notice

We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.

Skills execute code in your development environment. Always verify the publisher's identity, review recent commits, and test in isolated environments before production deployment.

List & Monetize Your Skill

Submit your Claude Code skill and start earning

GET_STARTED →

Use Cases

User Story & Requirements Generation

Create detailed user stories, acceptance criteria, and feature specs

Example

Generate user stories for 'password reset feature' with acceptance criteria, edge cases, and test scenarios

Reduce spec writing time by 50%, ensure comprehensive coverage

Competitive Analysis

Research competitors, compare features, identify gaps

Example

Analyze 5 competitor products, create feature comparison matrix, suggest differentiation opportunities

Complete competitive research in 2 hours instead of 2 days

Roadmap Prioritization

Evaluate features using frameworks (RICE, ICE, Kano) and create prioritized backlogs

Example

Score 20 feature ideas using RICE framework, generate prioritized roadmap with rationale

Make data-driven prioritization decisions faster

Stakeholder Communication

Draft PRDs, status updates, and stakeholder presentations

Example

Create executive summary of Q3 roadmap, monthly progress report, feature launch announcement

Save 3-5 hours/week on communication overhead

Implementation Guide

Prerequisites

  • Claude Desktop or compatible AI client
  • Access to product documentation and roadmap tools (Jira, Notion, etc.)
  • Understanding of product management frameworks (RICE, Jobs-to-be-Done, etc.)
  • Stakeholder contact information and communication channels

Time Estimate

30-60 minutes to see productivity improvements

Installation Steps

  1. 1.Install product management skill
  2. 2.Start with user story generation for known feature
  3. 3.Progress to competitive analysis: research 2-3 competitors
  4. 4.Use for roadmap prioritization: apply RICE/ICE scoring
  5. 5.Draft stakeholder communications and refine based on feedback
  6. 6.Build template library for recurring PM tasks
  7. 7.Share effective prompts with product team

Common Pitfalls

  • Not validating competitive research—verify facts before sharing
  • Accepting user stories without involving engineering team
  • Over-relying on frameworks without qualitative judgment
  • Not customizing outputs to company culture and communication style
  • Skipping stakeholder validation of generated requirements

Best Practices

✓ Do

  • +Validate research and competitive analysis with real data
  • +Collaborate with engineering when generating technical requirements
  • +Customize frameworks and templates to your company context
  • +Use skill for first drafts, refine with stakeholder input
  • +Document successful prompt patterns for PM tasks
  • +Combine AI efficiency with human judgment and intuition

✗ Don't

  • Don't publish competitive analysis without fact-checking
  • Don't finalize user stories without engineering review
  • Don't make prioritization decisions solely on AI scoring
  • Don't skip customer validation of generated requirements
  • Don't ignore company-specific context and culture

💡 Pro Tips

  • Provide context: company goals, constraints, customer feedback
  • Ask for alternatives: 'Show 3 ways to prioritize this roadmap'
  • Request stakeholder-specific formatting: 'Executive summary vs. engineering spec'
  • Use skill for 70% generation + 30% customization to company needs

When to Use This

✓ Use When

Use for user story writing, competitive research, roadmap prioritization, stakeholder communication, and PRD drafting. Best for reducing repetitive documentation and research work.

✗ Avoid When

Avoid for strategic product vision (requires deep customer empathy), pricing decisions (needs market and financial expertise), or when face-to-face customer discovery is more valuable than speed.

Learning Path

  1. 1Basic: user stories, feature specs, status updates
  2. 2Intermediate: competitive analysis, prioritization frameworks, PRDs
  3. 3Advanced: product strategy, go-to-market planning, OKR setting
  4. 4Expert: product vision, market positioning, business model innovation

Discussion

Product Hunt–style comments (not star reviews)
  • No comments yet — start the thread.
general reviews

Ratings

4.649 reviews
  • Hana Kapoor· Dec 20, 2024

    I recommend mcp-configure for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.

  • Liam Huang· Dec 12, 2024

    mcp-configure fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.

  • James Choi· Nov 15, 2024

    Solid pick for teams standardizing on skills: mcp-configure is focused, and the summary matches what you get after install.

  • Soo Bansal· Nov 11, 2024

    mcp-configure reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Xiao Rahman· Nov 3, 2024

    mcp-configure is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.

  • Mia Ndlovu· Oct 22, 2024

    Keeps context tight: mcp-configure is the kind of skill you can hand to a new teammate without a long onboarding doc.

  • Aanya Johnson· Oct 6, 2024

    mcp-configure has been reliable in day-to-day use. Documentation quality is above average for community skills.

  • Henry Iyer· Oct 2, 2024

    Registry listing for mcp-configure matched our evaluation — installs cleanly and behaves as described in the markdown.

  • Sakshi Patil· Sep 21, 2024

    We added mcp-configure from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.

  • Mia Yang· Sep 17, 2024

    mcp-configure reduced setup friction for our internal harness; good balance of opinion and flexibility.

showing 1-10 of 49

1 / 5