Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"name": "mastercard-developers",
"metadata": {
"description": "Official Mastercard Developers plugins and skills for AI coding agents, including the Mastercard Developers MCP server and best practices for building integrations with Mastercard APIs."
},
"owner": {
"name": "Mastercard",
"email": "apisupport@mastercard.com"
},
"plugins": [
{
"name": "mastercard-developers",
"source": "./providers/claude/plugin/",
"description": "Mastercard Developers",
"version": "1.0.0",
"author": {
"name": "Mastercard"
}
}
]
}
27 changes: 27 additions & 0 deletions .codex-plugin/marketplace.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"name": "mastercard-developers",
"metadata": {
"description": "Official Mastercard Developers plugins and skills for AI coding agents, including the Mastercard Developers MCP server and best practices for building integrations with Mastercard APIs."
},
"owner": {
"name": "Mastercard",
"email": "apisupport@mastercard.com"
},
"plugins": [
{
"name": "mastercard-developers",
"version": "1.0.0",
"source": {
"source": "git-subdir",
"url": "https://github.com/Mastercard/developers-agent-toolkit.git",
"path": "providers/codex/plugin",
"ref": "main"
},
"policy": {
"installation": "AVAILABLE",
"authentication": "NONE"
},
"category": "Finance"
}
]
}
21 changes: 21 additions & 0 deletions .cursor-plugin/marketplace.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"name": "mastercard-developers",
"metadata": {
"description": "Official Mastercard Developers plugins and skills for AI coding agents, including the Mastercard Developers MCP server and best practices for building integrations with Mastercard APIs."
},
"owner": {
"name": "Mastercard",
"email": "apisupport@mastercard.com"
},
"plugins": [
{
"name": "mastercard-developers",
"source": "./providers/cursor/plugin/",
"description": "Mastercard Developers",
"version": "1.0.0",
"author": {
"name": "Mastercard"
}
}
]
}
Binary file added .github/assets/md-prompt-output1.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .github/assets/md-prompt-output2.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .github/assets/md-prompt.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
23 changes: 23 additions & 0 deletions .github/workflows/guard-skills.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Guard Skills Sync
'on':
push:
branches:
- main
- develop
pull_request:
branches:
- main
- develop
workflow_dispatch:
jobs:
skills-in-sync:
name: Verify provider skills match canonical skills/
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: 'Use Node.js 20.x'
uses: actions/setup-node@v4
with:
node-version: '20.x'
- name: Check skills are in sync
run: node scripts/sync.js --check
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
.DS_Store
.vscode
.idea
*.iml
.eslintcache
.npmrc
.mcpregistry*
108 changes: 108 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,114 @@ main().catch((error) => {

For more details, checkout [typescript](typescript/README.md) directory

## Agent Plugins
Comment thread
kshamajha marked this conversation as resolved.

[Agent skills](https://agentskills.io/home) are instructions that agents can use to build faster and more accurately. This repository provides official plugins that bundle the `mastercard-developers-bestpractice` skill together with the Mastercard Developers MCP server for popular agent harnesses.

If you use one of these harnesses, we recommend installing the plugin, which includes the MCP server and updates automatically.

> **Note:** The curated marketplace commands below (`@claude-plugins-official`, `@openai-curated`, and the Cursor slash command) work once the plugin is accepted into each vendor's registry. Until then, use the GitHub-based install shown under [Install from this repository](#install-from-this-repository).

### Claude Code

```bash
claude plugin install mastercard-developers@claude-plugins-official
```

### Codex

```bash
codex plugin add mastercard-developers@openai-curated
```

### Cursor

```bash
/add-plugin mastercard-developers
```

### Manual installation

> Manually installed skills don't auto-update. Run `npx skills update -y` to get the latest versions.

```bash
npx skills add Mastercard/developers-agent-toolkit
```

### Install from this repository

Before the plugins are listed in the curated marketplaces, you can install
directly from this GitHub repository.

**Claude Code** - add this repo as a marketplace, then install:

```bash
claude plugin marketplace add Mastercard/developers-agent-toolkit
claude plugin install mastercard-developers@mastercard-developers
```

**Skills only** (any supported agent) - install the skill straight from the repo:

```bash
npx skills add Mastercard/developers-agent-toolkit
```

Plugin sources live under [`providers/`](providers/), and the marketplace manifests are `.claude-plugin/marketplace.json`, `.codex-plugin/marketplace.json`, and `.cursor-plugin/marketplace.json`.

### Using the skill

Once the plugin (or MCP server) is installed, just prompt your agent in
plain language. The skill guides the agent to call the Mastercard
Developers MCP tools instead of relying on training data.

Try a prompt like:

```text
Using the Mastercard Developers tools, list the available services,
then show me the API operations for the Mastercard Locations API and
explain how to authenticate with OAuth 1.0a.
```

![Prompting the agent with the Mastercard Developers skill](.github/assets/md-prompt.jpg)

Results will include the service list, the API operations for the Locations API,
and details about the OAuth 1.0a integration:

![Service list and Locations API operations returned by the agent](.github/assets/md-prompt-output1.jpg)

![OAuth 1.0a integration details returned by the agent](.github/assets/md-prompt-output2.jpg)

Behind the scenes the agent chains the MCP tools to answer this, for example:

1. `get-services-list` - discover available Mastercard products/services.
2. `get-api-operation-list` - list operations for the chosen service's spec.
3. `get-documentation-page` - discover the correct swagger spec path.
4. `get-oauth10a-integration-guide` - pull the official authentication guide.

You don't call these tools directly - just describe your goal and the
agent selects the right tools.

### Editing skills

The [`skills/`](skills/) directory at the repository root is the **single source of truth** for every agent skill (for example `mastercard-developers-bestpractice`). Each provider under `providers/*/plugin/skills/` holds a synchronized copy - do not edit those copies directly.

To update a skill:

1. Edit the canonical file under `skills/` (e.g. `skills/mastercard-developers-bestpractice/SKILL.md`).
2. Run the sync script from the repository root to propagate the change to every provider:

```bash
node scripts/sync.js
```

To verify (without writing) that the provider copies match the canonical source - useful in CI or a pre-commit hook - run:

```bash
node scripts/sync.js --check
```

This exits non-zero if any provider skill is missing or out of sync.

## Contributing

Contributions are welcome. Please feel free to submit a pull request or open an issue to report a bug or suggest a feature.
Expand Down
40 changes: 40 additions & 0 deletions providers/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Provider Plugins

This directory contains plugins for different AI code editors and agent harnesses.

Each provider has the same layout:

```
providers/<provider>/plugin/
├── skills/ # Agent skills (mastercard-developers-bestpractice)
├── .mcp.json | mcp.json # Mastercard Developers MCP server wiring
└── .<provider>-plugin/ # Provider-specific plugin manifest (plugin.json)
```

## Providers

| Provider | Plugin manifest | MCP config |
|----------|-----------------|------------|
| `claude` | `.claude-plugin/plugin.json` | `.mcp.json` |
| `codex` | `.codex-plugin/plugin.json` | `.mcp.json` |
| `cursor` | `.cursor-plugin/plugin.json` | `mcp.json` |

## MCP server

Every plugin connects to the remote Mastercard Developers MCP server at
`https://developer.mcp.mastercard.com`, which requires **no authentication**.
A local `npx -y @mastercard/developers-mcp` alternative is documented in the
skill.

## Skills

Each plugin ships the `mastercard-developers-bestpractice` skill under
`skills/`. The skill instructs agents on how to set up the Mastercard
Developers MCP server (remote and local) and how to reach Mastercard
documentation in `llms.txt` format.

> **Do not edit the skill copies under `providers/*/plugin/skills/`.** They are
> generated from the canonical [`skills/`](../skills/) directory at the
> repository root. Edit the canonical file, then run `node scripts/sync.js`
> to propagate the change to every provider. `node scripts/sync.js --check`
> (also run in CI) verifies the copies are in sync.
24 changes: 24 additions & 0 deletions providers/claude/plugin/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{
"name": "mastercard-developers",
"description": "Mastercard Developers plugin for Claude to help build integrations with Mastercard APIs, including best practices and the Mastercard Developers MCP server.",
"version": "1.0.0",
"author": {
"name": "Mastercard",
"url": "https://developer.mastercard.com"
},
"homepage": "https://developer.mastercard.com",
"repository": "https://github.com/Mastercard/developers-agent-toolkit",
"license": "MIT",
"keywords": [
"mastercard",
"mastercard-developers",
"payments",
"api",
"open-banking",
"open-finance",
"integration",
"mcp",
"modelcontextprotocol",
"agent-toolkit"
]
}
8 changes: 8 additions & 0 deletions providers/claude/plugin/.mcp.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"mcpServers": {
"mastercard-developers": {
"type": "http",
"url": "https://developer.mcp.mastercard.com"
}
}
}
Loading
Loading