MCP server for ARI (Agentic Rate Indicators). Live fair-market-value lookups, leaderboards, and signed-receipt verification for x402/MPP services · usable from any MCP-aware agent (Claude Desktop, Cursor, Continue, Windsurf, Zed, ChatGPT desktop, Gemini CLI).
Project description
ari-mcp · Python
MCP server for Agentic Rate Indicators. Gives any MCP-aware agent (Claude Desktop, Cursor, Continue, Windsurf, Zed, ChatGPT desktop, Gemini CLI) live fair-market-value lookups, leaderboards, observation history, and signed-receipt verification for x402 + MPP services.
pipx install ari-mcp
ari-mcp install # print copy-paste config blocks for popular hosts
Functionally identical to ari-mcp on npm. Use whichever you prefer · both expose the same 10 tools, the same JSON shapes, and verify receipts with the same Ed25519 wire format.
Why
LLM agents that pay for things need a pricing oracle they can cite, not a number a seller asserts. ARI indexes services that charge over x402 (Coinbase HTTP 402) and MPP (Stripe + Tempo Machine Payments Protocol), tracks observed prices, computes a Fair Market Value with a low/high band, and returns a green/amber/red verdict before any agent pays. Every JSON response is signed with an Ed25519 key and stamped with a citable receipt id, so an agent can refuse to overpay and a human auditor can re-verify any decision weeks later.
Install in 30 seconds
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) · %APPDATA%/Claude/claude_desktop_config.json (Windows)
{
"mcpServers": {
"ari": {
"command": "ari-mcp",
"args": []
}
}
}
Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"ari": {
"command": "ari-mcp",
"args": []
}
}
}
Continue, Windsurf, Zed, ChatGPT desktop, Gemini CLI
Run ari-mcp install to print the right config block for each host. Add --client cursor (or any other slug) to print only one.
The ten tools
| Tool | What it does |
|---|---|
is_fair_price |
Green/amber/red verdict for a quoted price |
refuse_if_overpriced |
Convenience wrapper to call right before paying |
get_fmv |
Median plus low/high band plus sample size for a service |
get_service |
Full detail row · sources, related services, last observation |
list_services |
Browse or filter the index by protocol or category |
get_leaderboard |
Cheapest, most expensive, biggest movers |
recent_observations |
Raw observed price history for a service |
verify_receipt |
Re-verify a previously issued receipt id |
get_signed_receipt |
Re-fetch the signed body for a receipt |
subscribe_alert |
Set up a webhook or email price alert |
Why signed receipts
An agent that pays for things needs to trust two parties at once · the seller quoting a price, and any oracle telling it whether that price is fair. ARI signs every response with an Ed25519 key whose public half ships embedded in this client at build time. There is no first-call trust window · the very first request a fresh install makes is verified against the pinned key id ari-aedbd75d43c8, and any mismatch fails closed with a clear error. If the publisher rotates keys, the new id is added to an accepted-id list one release before the old one is removed, so stale installs keep verifying correctly until they upgrade.
Pass --insecure-skip-pin to accept any key id the server returns (use this only during a rotation). Pass --insecure-skip-verify to skip Ed25519 verification entirely (test setups only).
Self-hosting
ari-mcp --api-base-url https://ari.example.corp
When the base URL is overridden, the client falls back to fetching the publisher key from <base>/.well-known/ari-pubkey.pem on first call · a single trust-on-first-use step that the operator opted in to by choosing the mirror.
CLI reference
ari-mcp [serve] Start the MCP stdio server (default)
ari-mcp install Print install snippets for popular MCP hosts
ari-mcp ping Send a one-shot opt-in install ping
ari-mcp --version Print the server version
OPTIONS
--api-base-url URL Override the ARI API base URL
--api-key KEY Bearer token for paid tiers (optional)
--transport stdio|http Transport for `serve`. Default: stdio
--port N HTTP port (with --transport http). Default: 8765
--host HOST HTTP bind host. Default: 127.0.0.1
--insecure-skip-verify Skip Ed25519 receipt verification
--insecure-skip-pin Skip the build-time key-id pin (allow rotation)
Documentation
- Hosted docs · agentrateindicators.com/docs/mcp
- Receipt format · github.com/Antmanbuilds/ARI/blob/main/spec/signed-receipts.md
- OpenAPI · github.com/Antmanbuilds/ARI/blob/main/spec/openapi.yaml
License
Apache-2.0 · contact hello@agenticrates.org.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ari_mcp_py-0.1.2.tar.gz.
File metadata
- Download URL: ari_mcp_py-0.1.2.tar.gz
- Upload date:
- Size: 24.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
643b88f5f5441255dcaa5c2249335ab82742ed440b66b6a3997759c1ea4fe129
|
|
| MD5 |
cd68e1a0749d736b418a70b1ef0565e6
|
|
| BLAKE2b-256 |
1786d6f802c3004dd11b25038ed7a6578448901afca3ce81f7b15610f338dc94
|
File details
Details for the file ari_mcp_py-0.1.2-py3-none-any.whl.
File metadata
- Download URL: ari_mcp_py-0.1.2-py3-none-any.whl
- Upload date:
- Size: 24.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a78c589ed1ac1deb3df4c8dedba2209cc048910bc385a443440f3b4b13758faa
|
|
| MD5 |
727bf2dd3cc431c9b46a6dd4909fae7a
|
|
| BLAKE2b-256 |
44b4483074e0bb171c74e045bbe13f446224193e686f03cd4c0ef736cea05607
|