npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@deepakd/tekionai-mcp-client

v1.4.13

Published

Tekion AI MCP Client - Local Jira and GitLab tools with remote server integration

Readme

Tekion AI MCP Client

A simple stdio-based Model Context Protocol (MCP) server that provides local Jira and GitLab tools while integrating with a remote MCP server.

Overview

The Tekion MCP Client provides:

  • Local Jira Tools: All Jira operations execute locally for better performance and credential security
  • Local GitLab Tools: GitLab operations using glab CLI for merge request management
  • Remote Server Integration: Forwards other tools to the remote MCP server
  • Stdio Interface: Simple stdio transport for direct MCP client connection
  • Intelligent Routing: Automatically routes tools between local and remote execution
  • Connection Management: Handles remote server connectivity with retry logic

Architecture

[AI Client] ↔ [Tekion MCP Client via stdio] ↔ [Remote MCP Server]
                      ↓
                [Local Jira Tools]
                [Local GitLab Tools]

Features

Local Jira Tools

  • get_jira_ticket - Retrieve JIRA ticket information
  • create_jira_ticket - Create new JIRA tickets
  • create_jira_epic - Create JIRA epics
  • add_jira_comment - Add comments to tickets
  • link_jira_epic_to_parent - Link epics to parent tickets
  • link_jira_story_to_parent - Link stories to parent tickets
  • update_jira_ticket - Update existing tickets
  • attach_file_to_jira - Attach files to tickets

Local GitLab Tools

  • get_gitlab_prs - Get open merge requests for a GitLab project (requires glab CLI)
  • save_generated_context - Save generated context files to TekionAI repository via branch and PR (requires glab CLI and git)

Proxy Features

  • Automatic tool routing (local vs remote)
  • Connection health monitoring
  • Retry logic with exponential backoff
  • Graceful degradation when remote server unavailable
  • Real-time tool discovery from remote server

Prerequisites

GitLab CLI (for GitLab tools)

Install and authenticate the GitLab CLI:

# Install glab CLI
# macOS
brew install glab

# Linux/Windows - see https://gitlab.com/gitlab-org/cli

# Authenticate
glab auth login

Installation

Option 1: Direct Usage with npx (Recommended)

npx @tekionai/mcp-client

Option 2: Local Development

  1. Clone and setup:

    cd mcp-client
    npm install
  2. Configure environment:

    cp .env.example .env
    # Edit .env with your configuration
  3. Build the project:

    npm run build

Configuration

Environment Variables

| Variable | Description | Default | Required | |----------|-------------|---------|----------| | REMOTE_MCP_SERVER_URL | Remote MCP server URL | http://localhost:8085/mcp | No | | TEKIONAI_FRAMEWORK_TYPE | Environment type (DEV/QA) | DEV | No | | TEKIONAI_MODULE | Module name for remote server | - | No | | TEKION_EMAIL | Jira email (local use only) | - | Yes* | | JIRA_TOKEN | Jira API token (local use only) | - | Yes* | | JIRA_BASE_URL | Jira base URL | https://tekion.atlassian.net | No |

*Required for local Jira tools to function. NOT sent to remote server.

Example Configuration

# Remote server
REMOTE_MCP_SERVER_URL=http://your-remote-server:8085/mcp
TEKIONAI_FRAMEWORK_TYPE=DEV
TEKIONAI_MODULE=aec-studio

# Local Jira credentials (NOT sent to remote server)
[email protected]
JIRA_TOKEN=your-jira-api-token

Usage

Starting the Proxy

# Development mode
npm run dev

# Production mode
npm run build
npm start

Connecting AI Clients

Configure your AI client to use the Tekion MCP Client:

Using npx (Recommended)

{
  "mcpServers": {
    "tekion": {
      "command": "npx",
      "args": ["@tekionai/mcp-client"],
      "env": {
        "TEKION_EMAIL": "[email protected]",
        "JIRA_TOKEN": "your-jira-token",
        "REMOTE_MCP_SERVER_URL": "http://your-remote-server:8085/mcp"
      }
    }
  }
}

Using local build

{
  "mcpServers": {
    "tekion": {
      "command": "node",
      "args": ["path/to/mcp-client/dist/index.js"],
      "env": {
        "TEKION_EMAIL": "[email protected]",
        "JIRA_TOKEN": "your-jira-token",
        "REMOTE_MCP_SERVER_URL": "http://your-remote-server:8085/mcp"
      }
    }
  }
}

Testing the Connection

Use any MCP client to test:

# Test with npx
npx @tekionai/mcp-client

# Test local build
node dist/index.js

Tool Routing Logic

The proxy uses intelligent routing to determine where to execute tools:

  1. Local Jira Tools: Always executed locally for performance and security
  2. Local Tools: Tools registered locally take precedence
  3. Remote Tools: Tools not available locally are forwarded to remote server
  4. Fallback: If remote server unavailable, returns appropriate error

Error Handling

Remote Server Unavailable

  • Local Jira tools continue to work
  • Remote tools return connection error
  • Automatic reconnection attempts with exponential backoff

Jira Credential Issues

  • Clear error messages for missing credentials
  • Tools fail gracefully with helpful error information

Network Issues

  • Connection retry logic (up to 3 attempts)
  • Exponential backoff between retries
  • Health check monitoring

Development

Project Structure

src/
├── client.ts              # Main proxy server
├── config.ts              # Configuration management
├── types/                 # TypeScript type definitions
├── proxy/
│   ├── remoteClient.ts    # Remote MCP server client
│   └── toolRouter.ts      # Tool routing logic
└── tools/
    ├── jira/              # Local Jira tools
    │   ├── index.ts
    │   ├── jiraIntegration.ts
    │   └── *.ts           # Individual tool implementations
    └── gitlab/            # Local GitLab tools
        ├── index.ts
        └── *.ts           # Individual tool implementations

Adding New Local Tools

  1. Create tool implementation in appropriate directory
  2. Export from index file
  3. Register in client.ts

Scripts

npm run build      # Build TypeScript
npm run dev        # Development mode with hot reload
npm start          # Start production server
npm run lint       # Run ESLint
npm run format     # Format code with Prettier

Troubleshooting

Common Issues

  1. Remote server connection fails

    • Check REMOTE_MCP_SERVER_URL configuration
    • Verify remote server is running and accessible
    • Check network connectivity
  2. Jira tools not working

    • Verify TEKION_EMAIL and JIRA_TOKEN are set
    • Test Jira credentials manually
    • Check Jira API token permissions
  3. Tools not appearing

    • Check proxy startup logs for registration errors
    • Verify remote server tool discovery
    • Check health endpoint for status

Logs

The proxy provides detailed logging:

  • Tool registration
  • Routing decisions
  • Remote server connectivity
  • Error details

Set LOG_LEVEL=debug for verbose logging.

License

MIT License - see LICENSE file for details.