Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>MCPHelperNew to Visual Studio Code? Get it now.
MCPHelper

MCPHelper

Snigdha Teja

|
2 installs
| (0) | Free
AI-powered proxy agent that routes natural language queries to various API tools including BigIP, GitLab, JIRA, Bugzilla, and Confluence. Automatically determines the correct API endpoint and formats responses professionally.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

API Tools - Direct Copilot Integration

This project contains command-line tools for interacting with various APIs without requiring an MCP server. The tools are designed to be used directly with GitHub Copilot and AI agents.

Available Tools

  • GitLab: Git repository management and merge request operations
  • GitLab Enhanced: Extended GitLab functionality with user-friendly commands
  • BigIP: F5 BigIP management and load balancer operations
  • Bugzilla: Bug tracking and issue management
  • Confluence: Wiki and documentation management
  • JIRA: Issue tracking and project management

Prerequisites & Setup

1. Environment Configuration

IMPORTANT: Before using any tools, you must configure authentication credentials.

  1. Copy the example environment file:

    cp .env.example .env
    
  2. Edit the .env file with your actual credentials:

    # GitLab Configuration
    GITLAB_URL=https://gitswarm.f5net.com
    GITLAB_API_TOKEN=your_actual_gitlab_token_here
    
    # JIRA Configuration
    JIRA_URL=https://jira.f5net.com
    JIRA_TOKEN=your_actual_jira_token_here
    
    # Bugzilla Configuration
    BUGZILLA_URL=https://bugzilla.olympus.f5net.com
    BUGZILLA_TOKEN=your_actual_bugzilla_token_here
    
    # BIG-IP Configuration
    BIGIP_HOST=your_bigip_host_ip
    BIGIP_USERNAME=admin
    BIGIP_PASSWORD=your_bigip_password
    
    # Confluence Configuration
    CONFLUENCE_URL=https://docs.f5net.com
    CONFLUENCE_TOKEN=your_actual_confluence_token_here
    

2. Token Generation Instructions

GitLab Token: Go to GitLab → User Settings → Access Tokens → Create token with scopes: api, read_user, read_repository

JIRA Token: Go to JIRA → User Profile → Security → API tokens → Create token

Bugzilla Token: Go to Bugzilla → Preferences → API Keys → Generate new API key

Confluence Token: Go to Confluence → User Profile → Security → API tokens → Create token

3. Tool Permissions

Make sure all tools are executable:

chmod +x tools/*

AI Agent Instructions

For AI Agents Using These Tools

When a user requests any operation related to GitLab, BigIP, Bugzilla, Confluence, or JIRA, follow these steps:

  1. Always check that .env file is properly configured - If not configured, ask user to set up credentials first
  2. Use the appropriate tool from the tools/ directory
  3. Output results to temp.txt to avoid terminal issues
  4. Parse URLs to extract necessary parameters (project IDs, issue numbers, etc.)

Tool Usage Patterns

GitLab Operations

# Basic GitLab API access
./tools/gitlab "<api_endpoint>" [method] [data]

# Examples:
./tools/gitlab "/projects/17333/merge_requests/1285" GET
./tools/gitlab "/projects/17333/merge_requests/1285/approve" POST
./tools/gitlab "/projects?search=project_name" GET

GitLab Enhanced Operations

# User-friendly GitLab commands
./tools/gitlab_enhanced [command] [args]

# Examples:
./tools/gitlab_enhanced get_user_info
./tools/gitlab_enhanced list_projects
./tools/gitlab_enhanced get_merge_request_details <project_id> <mr_iid>

BigIP Operations

# F5 BigIP management
./tools/bigip "<api_endpoint>" [method] [data]

# Examples:
./tools/bigip "/mgmt/tm/ltm/virtual" GET
./tools/bigip "/mgmt/tm/ltm/pool" GET
./tools/bigip "/mgmt/tm/sys/version" GET

Bugzilla Operations

# Bug tracking operations
./tools/bugzilla "<api_endpoint>" [method] [data]

# Examples:
./tools/bugzilla "/bug/123456" GET
./tools/bugzilla "/bug?assigned_to=user@example.com" GET
./tools/bugzilla "/product" GET

Confluence Operations

# Wiki and documentation
./tools/confluence "<api_endpoint>" [method] [data]

# Examples:
./tools/confluence "/content" GET
./tools/confluence "/content/12345?expand=body.storage" GET
./tools/confluence "/content?title=Page Title" GET

JIRA Operations

# Issue tracking
./tools/jira "<api_endpoint>" [method] [data]

# Examples:
./tools/jira "/issue/PROJ-123" GET
./tools/jira "/project" GET
./tools/jira "/search?jql=assignee=currentUser()" GET

Common AI Agent Tasks

1. GitLab Merge Request Operations

# Approve MR: Extract project ID and MR ID from URL
# URL: https://gitswarm.f5net.com/mbip/modules/f5-eesv/-/merge_requests/1285
# Project: mbip/modules/f5-eesv → ID: 17333, MR: 1285
./tools/gitlab "/projects/17333/merge_requests/1285/approve" POST

# Get MR details
./tools/gitlab "/projects/17333/merge_requests/1285" GET

# Get MR changes
./tools/gitlab "/projects/17333/merge_requests/1285/changes" GET

2. URL Parsing Examples

  • GitLab MR URL: https://gitswarm.f5net.com/mbip/modules/f5-eesv/-/merge_requests/1285
    • Project path: mbip/modules/f5-eesv
    • MR ID: 1285
    • Find project numeric ID first: ./tools/gitlab "/projects?search=f5-eesv"

3. Error Handling

  • All tools write output to temp.txt or return JSON responses
  • Check HTTP status codes in responses
  • Common errors: 401 (unauthorized), 403 (forbidden), 404 (not found)

4. Output Management

  • Tools output to temporary files automatically
  • Use tail -n 20 temp.txt to check latest results
  • JSON responses are formatted for easy parsing

AI Agent Response Template

When performing operations, AI agents should:

  1. Acknowledge the request: "I'll help you [perform operation] using the [tool name] tool."
  2. Extract parameters: Parse URLs or extract IDs/names from user input
  3. Execute command: Run appropriate tool with correct parameters
  4. Check results: Verify operation success and provide summary
  5. Handle errors: Explain any issues and suggest solutions

Example AI Agent Workflow

User: "Approve merge request https://gitswarm.f5net.com/mbip/modules/f5-eesv/-/merge_requests/1285"

AI Agent Response:

  1. Extract project path: mbip/modules/f5-eesv and MR ID: 1285
  2. Find project numeric ID: ./tools/gitlab "/projects?search=f5-eesv"
  3. Approve MR: ./tools/gitlab "/projects/17333/merge_requests/1285/approve" POST
  4. Confirm approval status and report back to user

Universal AI Agent Prompt Template

For Users: How to Use This Project

If you have this project set up and want to use it with AI agents, simply copy and paste this prompt template along with your specific request:

You are an expert AI assistant with access to API tools for GitLab, BigIP, Bugzilla, Confluence, and JIRA operations. 

**Available Tools Location**: `/Users/a.killamsetty/go/src/gitswarm.f5net.com/Uday/API-Tools-NoMCP/tools/`

**Available Tools**:
- `gitlab` - GitLab API operations (basic)
- `gitlab_enhanced` - GitLab operations with user-friendly commands
- `bigip` - F5 BigIP management
- `bugzilla` - Bug tracking operations
- `confluence` - Wiki and documentation management
- `jira` - Issue tracking and project management

**Environment Setup**: Authentication credentials are configured in `.env` file

**Output Management**: All tools write output to `temp.txt` to avoid terminal issues. Always check this file for results.

**Tool Usage Pattern**: `./tools/[tool_name] "[api_endpoint]" [method] [data]`

**Important Instructions**:
1. Always run commands from the project root directory
2. Use `cd /Users/a.killamsetty/go/src/gitswarm.f5net.com/Uday/API-Tools-NoMCP` first
3. Output results to `temp.txt` by appending `>> temp.txt 2>&1` to commands
4. Check `temp.txt` file contents after running commands
5. For GitLab URLs, extract project path and IDs, then find numeric project ID if needed
6. Handle errors gracefully and explain issues to user

**Your Task**: [INSERT YOUR SPECIFIC REQUEST HERE]

Examples of requests:
- "Approve merge request https://gitswarm.f5net.com/project/repo/-/merge_requests/123"
- "Get GitLab project details for project X"
- "Check BigIP pool status"
- "Search Confluence for documentation about Y"
- "Get JIRA issue details for PROJ-123"
- "List Bugzilla bugs assigned to user@example.com"

Quick Start Examples

Once you have the project set up, you can ask AI agents to perform these common tasks:

GitLab Operations

"Approve merge request https://gitswarm.f5net.com/mbip/modules/f5-eesv/-/merge_requests/1285"
"Get merge request details for https://gitswarm.f5net.com/project/repo/-/merge_requests/456"
"List all projects in GitLab"
"Get user information from GitLab"

BigIP Operations

"Check BigIP system status"
"List all virtual servers on BigIP"
"Get pool member status"
"Show BigIP version information"

Bugzilla Operations

"Get details for bug 123456"
"List all bugs assigned to user@example.com"
"Search for bugs in product X"
"Show bug status for component Y"

Confluence Operations

"Search Confluence for 'API documentation'"
"Get page content for page ID 12345"
"List all pages in space ABC"
"Find pages with title containing 'installation'"

JIRA Operations

"Get JIRA issue details for PROJ-123"
"List all projects in JIRA"
"Search for issues assigned to current user"
"Get issue comments for TICKET-456"

Complete Setup Example

Here's what a user should do if they have this project:

  1. Initial Setup:

    cd /Users/a.killamsetty/go/src/gitswarm.f5net.com/Uday/API-Tools-NoMCP
    cp .env.example .env
    # Edit .env with your actual credentials
    chmod +x tools/*
    
  2. Test Tools:

    ./tools/gitlab "/user" GET > temp.txt 2>&1
    cat temp.txt
    
  3. Use with AI Agent:

    • Copy the universal prompt template above
    • Replace [INSERT YOUR SPECIFIC REQUEST HERE] with your actual request
    • Paste the complete prompt to your AI agent

Output Files

All tools write output to temporary files to avoid terminal delay issues:

  • temp.txt - Main output file for monitoring results
  • temp_output.json - JSON formatted responses (if applicable)
  • temp_output.txt - Plain text output (if applicable)
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft