Client libraries for integrating Stellar Intel into your application.
@stellarintel/sdk — Planned (v4)
Status: Planned — The typed SDK is a v4 deliverable.
Until it ships, use the HTTP API directly (examples below).
You can use the HTTP API directly from any TypeScript or JavaScript application today:
// Minimal typed fetch wrapper
const BASE = 'https://stellar-intel.vercel.app';
export async function getRates(corridorId: string, amount = '100') {
const res = await fetch(`${BASE}/api/rates/${corridorId}?amount=${amount}`);
if (!res.ok) throw new Error(`rates ${res.status}`);
return res.json();
}
export async function getReputation(anchorId: string) {
const res = await fetch(`${BASE}/api/reputation/${anchorId}`);
if (!res.ok) throw new Error(`reputation ${res.status}`);
return res.json();
}
export async function submitOfframpIntent(body: unknown) {
const res = await fetch(`${BASE}/api/intent/offramp`, {
method: 'POST',
headers: { 'content-type': 'application/json' },
body: JSON.stringify(body),
});
if (!res.ok) throw new Error(`intent ${res.status}`);
return res.json();
}Types can be imported from the repo: OfframpIntent, SignedIntentEnvelope,IntentV1 in types/intent.ts.
stellar-intel — Coming soon
You can use the HTTP API directly from any Python application today:
import httpx
BASE = "https://stellar-intel.vercel.app"
def get_rates(corridor_id: str, amount: str = "100") -> dict:
resp = httpx.get(
f"{BASE}/api/rates/{corridor_id}",
params={"amount": amount}
)
resp.raise_for_status()
return resp.json()
def get_reputation(anchor_id: str) -> dict:
resp = httpx.get(f"{BASE}/api/reputation/{anchor_id}")
resp.raise_for_status()
return resp.json()
def get_leaderboard(corridor: str | None = None) -> dict:
params = {}
if corridor:
params["corridor"] = corridor
resp = httpx.get(
f"{BASE}/api/reputation/leaderboard",
params=params
)
resp.raise_for_status()
return resp.json()stellar-intel-reputation — Published on crates.io
The stellar-intel-reputation crate provides a typed client for reading reputation data from the Soroban oracle contract on-chain.
[dependencies]
stellar-intel-reputation = "0.1"
soroban-sdk = "22.0"use stellar_intel_reputation::ReputationReader;
use soroban_sdk::{Env, Address};
fn read_anchor_score(env: Env, contract_id: Address, anchor: Address) {
let reader = ReputationReader::new(&env, &contract_id);
let score = reader.score(&anchor);
println!("Anchor score: {:?}", score);
}For HTTP API access from Rust, use reqwest:
use reqwest::Client;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = Client::new();
let resp = client
.get("https://stellar-intel.vercel.app/api/rates/usdc-ngn")
.query(&[("amount", "100")])
.send()
.await?
.json::<serde_json::Value>()
.await?;
println!("{:#}", resp);
Ok(())
}@stellarintel/mcp — Published on npm
The MCP package exposes Stellar Intel's off-ramp routing to MCP-capable AI agents.
npm install @stellarintel/mcpSee the MCP tool docs for full usage.