3neti / x-mcp
AI-native MCP adapters for the X-Change Settlement Operating System.
Requires
- php: ^8.3
- illuminate/contracts: ^13.0
- illuminate/http: ^13.0
- illuminate/routing: ^13.0
- illuminate/support: ^13.0
- laravel/mcp: ^0.7
Requires (Dev)
- laravel/pint: ^1.0
- orchestra/testbench: ^11.0
- pestphp/pest: ^4.0
- pestphp/pest-plugin-laravel: ^4.0
This package is auto-updated.
Last update: 2026-08-15 07:05:42 UTC
README
3neti/x-mcp exposes AI-native tools for the X-Change Partner API. It is a transport adapter, never an alternate financial authority.
Boundary
Every tool calls the configured Partner API over authenticated HTTP. This package does not depend on 3neti/x-change and cannot call its Actions, models, Treasury services, provider adapters, or legacy lifecycle API.
Installation
composer require 3neti/x-mcp
XMCP_ENABLED=true XMCP_PUBLIC_DISCOVERY_ENABLED=true XMCP_API_BASE_URL=https://your-host.example/api/partner/v1 XMCP_ACCESS_CONTACT=api-access@example.test XMCP_EXPECTED_PARTNER_CONTRACT_VERSION=1.0.0
Confirm local commissioning before connecting an AI client:
php artisan x-mcp:doctor
The MCP client sends the same short-lived OAuth client-credentials bearer token used by the Partner API to /mcp/x-change. The token must include capabilities:read plus the scopes required by the tools it will use.
Initial tools
inspect_capabilitiesestimate_pay_codeissue_pay_codeget_pay_codecancel_pay_code
Issuance and cancellation require explicit confirmation and caller-supplied stable idempotency keys. Partner API ownership, funds, Treasury, pricing, scope, and mandate controls remain authoritative.
There is no self-service OAuth client registration.
Public discovery is available at /.well-known/x-change-mcp. It exposes only the
endpoint, authentication model, tool names, and access-contact policy—never client
credentials, bearer tokens, account identity, Treasury data, or claim evidence.