Skip to content

metrone-io/sdks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Metrone SDKs

Official SDKs for Metrone — privacy-first analytics for humans and AI agents.

Packages

Package npm Description
@metrone-io/sdk npm Browser SDK — pageviews, events, conversions
@metrone-io/react npm React bindings — Provider, hooks, route tracking
@metrone-io/server npm Server SDK — Node, Deno, Bun, edge runtimes
@metrone-io/mcp npm MCP server — analytics for Claude, GPT, and AI agents

Quick Start

Browser

npm install @metrone-io/sdk
import Metrone from '@metrone-io/sdk'

const analytics = new Metrone({
  apiKey: 'metrone_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
  endpoint: '/api/analytics/events'
})

analytics.pageview()
analytics.track('button_click', { button_id: 'cta' })

React

npm install @metrone-io/react @metrone-io/sdk
import { MetroneProvider, useMetrone } from '@metrone-io/react'

function App() {
  return (
    <MetroneProvider
      config={{
        apiKey: 'metrone_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
        endpoint: '/api/analytics/events'
      }}
    >
      <MyApp />
    </MetroneProvider>
  )
}

function MyComponent() {
  const { trackEvent, trackConversion } = useMetrone()
  return (
    <button onClick={() => trackEvent('button_click', { button_id: 'cta' })}>
      Click Me
    </button>
  )
}

Server (Node / Deno / Bun)

npm install @metrone-io/server
import { MetroneServer } from '@metrone-io/server'

const metrone = new MetroneServer({
  apiKey: 'metrone_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
})

await metrone.track('user_signup', { properties: { plan: 'pro' } })

await metrone.trackAICall({
  call_id: 'call_123',
  provider: 'openai',
  duration: 120,
  intent: 'booking',
  outcome: 'converted'
})

MCP (AI Agents)

npm install -g @metrone-io/mcp

Add to your MCP client config (Claude Desktop, Cursor, etc.):

{
  "mcpServers": {
    "metrone": {
      "command": "npx",
      "args": ["-y", "@metrone-io/mcp"],
      "env": {
        "METRONE_API_KEY": "metrone_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        "METRONE_PROJECT_ID": "proj_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
      }
    }
  }
}

Examples

See the examples/ directory for full working examples:

  • Next.js — Pages Router with @metrone-io/react
  • Remix — React Router with @metrone-io/react
  • Vanilla HTML — Script tag integration

Documentation

Contributing

We welcome contributions. Please open an issue first to discuss what you'd like to change.

git clone https://github.com/metrone-io/sdks.git
cd sdks
npm install
npm run build
npm test

License

MIT

About

Official Metrone SDKs — privacy-first analytics for humans and AI agents

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors