AceSense for AI agents: programmatic tennis video analysis

Pay-per-minute REST + MCP API for AI agents to analyze tennis videos. EU-hosted, prepaid credits, OpenAPI 3.1, MCP tools, x402 payments. Build coaching agents on AceSense.

If you're building an AI agent that helps tennis players improve, a coaching bot, a club-management tool, a training-platform integration, and you need a real per-shot video analysis backend, AceSense is built for that. Same pipeline that powers the AceSense iOS + Android app (TrackNet → court keypoints → MediaPipe pose → CatBoost shot/bounce classification → stroke quality), exposed as a clean pay-per-minute API.

This page is the public-facing entry point. Full technical docs live at docs.acesense.io; the OpenAPI 3.1 spec is at openapi.json; the MCP server card is at /.well-known/mcp/server-card.json.

How it works

1. Sign up for an API key       → POST  https://api.acesense.io/v1/api-keys
2. Top up prepaid credits       → POST  https://api.acesense.io/v1/billing/checkout  (Stripe-hosted)
3. Submit a video               → POST  https://api.acesense.io/v1/jobs
4. Poll for completion          → GET   https://api.acesense.io/v1/jobs/{jobId}
5. Fetch the analysis           → GET   https://api.acesense.io/v1/jobs/{jobId}/result

Or via MCP:

POST https://api.acesense.io/mcp
Authorization: Bearer phk_...
Content-Type: application/json

{ "jsonrpc": "2.0", "id": 1, "method": "tools/call",
  "params": { "name": "analyze_tennis_video",
              "arguments": { "videoUrl": "https://..." } } }

Pricing

TierPer-minute (EUR)Per-minute (USD)Per-minute (GBP)Notes
Standard€0.75$0.80£0.65Default for all agent API keys
Volume (>5,000 min/mo)€0.55$0.60£0.48Email [email protected]
EnterprisecustomcustomcustomSelf-hosted GPU optional

A 90-minute match costs about €67. A 5-minute serve drill costs €3.75.

The first €10 of credit is free for all new API keys, enough to process ~13 minutes and decide if AceSense fits your use case.

Auth

Authorization: Bearer phk_<24-byte-url-safe-random>

Keys are SHA-256-hashed at rest, never logged. Rotate at any time via the admin panel or the revokeApiKey callable.

Discovery surface (well-known endpoints)

PathPurposeSpec
/openapi.jsonOpenAPI 3.1, all GET endpoints on the marketing site + the api.acesense.io schemaOpenAPI 3.1
/.well-known/api-catalogLinkset of public retrievable resourcesRFC 9727
/.well-known/mcp/server-card.jsonMCP server metadataSEP-1649
/.well-known/agent-skills/index.jsonAgent Skills RFC v0.2.0 catalogueCloudflare Agent Skills
/.well-known/openid-configurationOIDC discovery (Firebase Auth issuer)OIDC 1.0
/.well-known/x402x402 payment-required discoveryx402
/.well-known/mpp.jsonMPP machine-payment discoveryMPP
/.well-known/acp.jsonACP merchant discoveryACP v0.1

Use cases for agent operators

  • Tennis-coaching chatbots, agent uploads a user's match video, returns coaching tips. Pay per-minute, pass-through to your end-user pricing.
  • Training-platform integrations, embed AceSense into a course platform; auto-analyze homework videos and surface stroke-quality scores in your LMS.
  • Club-management software, analyze junior tournament matches in bulk, push reports to parents/coaches.
  • Research / dataset enrichment, annotate large collections of tennis video for labeled-data products.

What we don't do

We're not a content marketplace. AceSense doesn't take a cut of an agent operator's downstream revenue. The pricing above is the only thing you pay; there are no per-impression or per-end-user surcharges.

Get started

  1. Sign up: acesense.io/signup (creates a Firebase user account).
  2. Generate an API key: visit admin.acesense.io → Developer → Create API Key.
  3. Top up your balance: Stripe Checkout flow.
  4. First call: curl -H "Authorization: Bearer phk_..." https://api.acesense.io/v1/healthz.

Email [email protected] with your project description for higher rate limits or volume pricing.

Related

Frequently asked questions

Can my AI agent analyze a tennis video through AceSense?
Yes. AceSense exposes a REST API at api.acesense.io and an MCP server at api.acesense.io/mcp. Both accept Bearer API keys (phk_…) and bill against prepaid credits. Submit a job, poll for status, fetch the analysis JSON when done, same shape as the in-app workflow but agent-callable.
How much does it cost per video?
Pricing is per minute of video processed at €0.75/min (USD ≈ $0.80, GBP ≈ £0.65). A typical 90-minute match costs about €67. Free tier gives 3 analyses/month with no API key required for evaluation; paid agent usage uses prepaid credits topped up via Stripe Checkout.
What protocols do you support for agent payments?
Stripe-hosted prepaid balances (the default), plus x402 payment-required headers and MPP machine-payment-protocol discovery. Agents that already speak x402 can pay per-call without account setup. See /.well-known/api-catalog for the full discovery chain.
Is this an MCP server I can plug into Claude / ChatGPT?
Yes. The MCP server at api.acesense.io/mcp uses Streamable HTTP transport and exposes tools, analyze_tennis_video, get_job_status, get_analysis_result, get_pricing, list_my_jobs, plus markdown resources (pricing, accuracy, how-it-works, faq). Bearer auth via the same API key as the REST endpoint.
Where is video data hosted? GDPR-compliant?
All uploaded video lives in europe-west1 (Belgium), processed by GPU workers in the same region. AceSense Inc. is a GDPR Article 28 sub-processor for any human end-user whose video an agent submits, agents acting on behalf of an EU resident must have their own lawful basis. DPA available on request.
What's the rate limit for an API key?
Default: 10 requests/min and 200 jobs/day per API key. Plan-tier keys (set via the user's billing settings) can raise these. Submit a support request if you need higher limits for production-scale agent operations.

Read the API docs

AI tennis coaching reports.