Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kudosity SMS Extension for GitHub Copilot

Send SMS, MMS, manage contact lists, and configure webhooks using the Kudosity messaging platform — directly from GitHub Copilot in VS Code.

Overview

This repo turns GitHub Copilot in VS Code into a Kudosity messaging assistant. It ships:

  • An MCP server registration (.vscode/mcp.json) that gives Copilot access to the Kudosity API documentation via the hosted MCP server at https://developers.kudosity.com/mcp.
  • A Copilot instructions file (.github/copilot-instructions.md) that teaches Copilot the API routing rules, authentication model, and behavior guidelines.
  • Four skill references (skills/) for the four supported operations: send SMS, send MMS, create lists, configure webhooks.
  • A kudosity-assistant agent prompt (agents/kudosity-assistant.md) that coordinates multi-step messaging operations.

All API operations are executed locally on your machine by Copilot's Agent Mode using curl with your own API credentials. The MCP server is used for documentation lookup only — no message data or credentials are sent through it.

Features

Skill Description
send-sms Send SMS to individuals (V2 API) or contact lists / multiple numbers (V1 API)
send-mms Send multimedia messages with images, GIFs, video, or audio (V2 API)
create-list Create contact lists and add recipients (V1 API)
setup-webhook Configure delivery status notifications, inbound messages, and more (V2 API)

Prerequisites

  1. Kudosity accountSign up for your free account
  2. API credentials — Found in your account under Developers → API Settings
  3. VS Code with the GitHub Copilot extension
  4. Copilot Agent Mode enabled — required to execute curl commands. In VS Code: open Copilot Chat → switch the mode dropdown from "Ask" to "Agent". (Available on paid Copilot tiers that include Agent Mode.)

Installation

Option 1: Open this repo as your VS Code workspace

git clone https://github.com/kudosity/kudosity-copilot-extension.git
cd kudosity-copilot-extension
code .

VS Code automatically picks up .vscode/mcp.json and .github/copilot-instructions.md for the workspace. Copilot is now connected to the Kudosity MCP server and knows the routing rules.

Option 2: User-level install (any workspace)

If you want @kudosity-style messaging help in every workspace (not just this repo), merge the contents of configs/vscode-user-settings.json into your VS Code user settings.json:

  1. Open the command palette (Cmd+Shift+P / Ctrl+Shift+P).
  2. Run "Preferences: Open User Settings (JSON)".
  3. Merge the mcp.servers.kudosity block from the snippet.
  4. Reload VS Code.

You can also drop a copy of .github/copilot-instructions.md into any workspace you want Copilot to be Kudosity-aware in.

Setup

Configure your API credentials

Set the credentials as environment variables in your shell profile (~/.zshrc or ~/.bashrc):

export KUDOSITY_API_KEY="your_api_key"
export KUDOSITY_API_SECRET="your_api_secret"

Reload your shell (source ~/.zshrc) and restart VS Code so the new env vars are picked up by Copilot's terminal.

A template is provided at configs/env.example.

Verify

In Copilot Chat (Agent Mode), ask:

"Check that my Kudosity credentials are configured and show my account balance."

Copilot will run echo "${KUDOSITY_API_KEY:0:6}…" to confirm the key is set, then hit the V1 /get-balance.json endpoint to validate auth end-to-end.

Usage Examples

All examples below assume Copilot Chat is open in Agent Mode.

Create a contact list

"Create a contact list called 'March Campaign' with fields for email and postcode, then add John Doe (0491570156) and Jane Smith (0435795809)."

Send an SMS

"Send an SMS to 0491570156 from 61481074185 saying 'Your order has shipped!'"

"Send an SMS to my 'March Campaign' list saying 'Sale starts tomorrow!'"

Send an MMS

"Send an MMS to 0435795809 with the image at https://example.com/product.jpg, subject 'New Arrival'"

Set up a webhook

"Set up a webhook at https://myapp.com/sms-status to receive SMS delivery status and inbound messages."

API Coverage

Operation API Version Auth Method
Create list V1 Basic Auth
Add contact to list V1 Basic Auth
Send SMS (single recipient) V2 x-api-key
Send SMS (to list / multiple) V1 Basic Auth
Send MMS V2 x-api-key
Create/manage webhooks V2 x-api-key

The full API specifications are available as OpenAPI documents:

Architecture & Trust Boundaries

This extension has two distinct components with different trust boundaries.

MCP server (remote, read-only)

The extension connects to the public Kudosity MCP server at developers.kudosity.com/mcp. This server provides API documentation and endpoint metadata only. It does not execute API operations, receive message content, or have access to your credentials.

MCP tools surfaced to Copilot:

  • list-specs, list-endpoints, get-endpoint, search-endpoints — browse and search API documentation
  • route-kudosity-operations — returns which API version to use for a given operation

The MCP server also exposes an execute-request tool. This extension deliberately does not use it — execution happens locally via curl to keep credentials on your machine.

API execution (local, authenticated)

All actual API operations (sending messages, creating lists, configuring webhooks) are executed locally by Copilot's Agent Mode on your machine using curl commands. API calls go directly from your machine to the Kudosity API servers:

  • V1 API (api.transmitsms.com) — Basic Auth with -u flag
  • V2 API (api.transmitmessage.com) — x-api-key header

Your credentials are never sent to the MCP server or to GitHub Copilot's backend. They are read by the local shell when Copilot's terminal tool runs curl.

Security

  • Credentials live as plain shell environment variables in your shell profile. They are not embedded in any extension file, sent to GitHub Copilot, or transmitted to any remote service other than the Kudosity API during authenticated requests. (VS Code has no keychain integration for arbitrary env vars — same precedent as the Claude Code plugin.)
  • API calls are executed locally by Copilot Agent Mode using curl. Requests go directly from your machine to the Kudosity API — they do not pass through the MCP server or any intermediary.
  • MCP server access is read-only — it serves API documentation and endpoint metadata only. No credentials, message content, or user data are sent to it.
  • No telemetry or analytics are collected by this extension.

Related Kudosity AI integrations

Troubleshooting

"Copilot says it can't run terminal commands"

You're not in Agent Mode. Open Copilot Chat, look for the mode dropdown at the bottom of the chat input, and switch from Ask to Agent.

"Copilot doesn't see the MCP server"

Check the MCP indicator in the Copilot Chat panel. If kudosity isn't listed:

  • Reload VS Code (Cmd+Shift+P → "Developer: Reload Window").
  • Confirm .vscode/mcp.json exists at the workspace root (or that the user-level setting is merged correctly).

"401 / 403 from the Kudosity API"

Your env vars aren't set in the shell that Copilot's terminal uses. After editing ~/.zshrc, restart VS Code so it picks up the new environment.

Extension Structure

├── README.md                       # This file
├── LICENSE                         # MIT
├── CHANGELOG.md                    # Release notes
├── .vscode/mcp.json                # Workspace MCP config for VS Code Copilot
├── .github/copilot-instructions.md # Persistent Copilot context
├── configs/
│   ├── vscode-user-settings.json   # Snippet for user-level install
│   └── env.example                 # Credentials template
├── skills/
│   ├── create-list/SKILL.md        # Contact list management
│   ├── send-sms/SKILL.md           # SMS sending
│   ├── send-mms/SKILL.md           # MMS sending
│   └── setup-webhook/SKILL.md      # Webhook configuration
└── agents/
    └── kudosity-assistant.md       # Specialized messaging assistant prompt

Support & Resources

License

MIT — see LICENSE

About

Kudosity SMS / MMS / contact-list / webhook helpers for GitHub Copilot in VS Code (Agent Mode). Mirrors the Gemini CLI and Claude Code plugins.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors