PurpleAir MCP Server for Vercel AI SDK 10 tools — connect in under 2 minutes
The Vercel AI SDK is the TypeScript toolkit for building AI-powered applications. Connect PurpleAir through Vinkius and every tool is available as a typed function. ready for React Server Components, API routes, or any Node.js backend.
ASK AI ABOUT THIS MCP SERVER
Vinkius supports streamable HTTP and SSE.
import { createMCPClient } from "@ai-sdk/mcp";
import { generateText } from "ai";
import { openai } from "@ai-sdk/openai";
async function main() {
const mcpClient = await createMCPClient({
transport: {
type: "http",
// Your Vinkius token. get it at cloud.vinkius.com
url: "https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp",
},
});
try {
const tools = await mcpClient.tools();
const { text } = await generateText({
model: openai("gpt-4o"),
tools,
prompt: "Using PurpleAir, list all available capabilities.",
});
console.log(text);
} finally {
await mcpClient.close();
}
}
main();
* Every MCP server runs on Vinkius-managed infrastructure inside AWS - a purpose-built runtime with per-request V8 isolates, Ed25519 signed audit chains, and sub-40ms cold starts optimized for native MCP execution. See our infrastructure
About PurpleAir MCP Server
Access the world's largest hyperlocal air quality dataset through PurpleAir — a global network of over 50,000 low-cost air quality sensors measuring PM2.5, PM10.0, temperature, humidity, pressure, and more. Connect PurpleAir to your AI agent to monitor real-time air quality, track wildfire smoke, analyze pollution trends, and access historical data for any location — all through natural conversation.
The Vercel AI SDK gives every PurpleAir tool full TypeScript type inference, IDE autocomplete, and compile-time error checking. Connect 10 tools through Vinkius and stream results progressively to React, Svelte, or Vue components. works on Edge Functions, Cloudflare Workers, and any Node.js runtime.
What you can do
- Real-Time Air Quality — Get current PM2.5 readings from sensors near any address or coordinate.
- Historical Analysis — Retrieve time-series data for trend analysis, pollution events, and compliance reporting.
- Geographic Mapping — Find all sensors within a bounding box for city-wide or regional air quality mapping.
- Wildfire Smoke Tracking — Monitor PM2.5 spikes during wildfire events across affected areas.
- Indoor Air Quality — Access indoor sensor data for workplace health and HVAC optimization.
- CSV Export — Download historical data in CSV format for spreadsheet analysis.
- Location-Based Queries — Find the closest sensor to any GPS coordinate.
- Sensor Filtering — Filter sensors by type (indoor/outdoor), fields, and update recency.
The PurpleAir MCP Server exposes 10 tools through the Vinkius. Connect it to Vercel AI SDK in under two minutes — no API keys to rotate, no infrastructure to provision, no vendor lock-in. Your configuration, your data, your control.
How to Connect PurpleAir to Vercel AI SDK via MCP
Follow these steps to integrate the PurpleAir MCP Server with Vercel AI SDK.
Install dependencies
Run npm install @ai-sdk/mcp ai @ai-sdk/openai
Replace the token
Replace [YOUR_TOKEN_HERE] with your Vinkius token
Run the script
Save to agent.ts and run with npx tsx agent.ts
Explore tools
The SDK discovers 10 tools from PurpleAir and passes them to the LLM
Why Use Vercel AI SDK with the PurpleAir MCP Server
Vercel AI SDK provides unique advantages when paired with PurpleAir through the Model Context Protocol.
TypeScript-first: every MCP tool gets full type inference, IDE autocomplete, and compile-time error checking out of the box
Framework-agnostic core works with Next.js, Nuxt, SvelteKit, or any Node.js runtime. same PurpleAir integration everywhere
Built-in streaming UI primitives let you display PurpleAir tool results progressively in React, Svelte, or Vue components
Edge-compatible: the AI SDK runs on Vercel Edge Functions, Cloudflare Workers, and other edge runtimes for minimal latency
PurpleAir + Vercel AI SDK Use Cases
Practical scenarios where Vercel AI SDK combined with the PurpleAir MCP Server delivers measurable value.
AI-powered web apps: build dashboards that query PurpleAir in real-time and stream results to the UI with zero loading states
API backends: create serverless endpoints that orchestrate PurpleAir tools and return structured JSON responses to any frontend
Chatbots with tool use: embed PurpleAir capabilities into conversational interfaces with streaming responses and tool call visibility
Internal tools: build admin panels where team members interact with PurpleAir through natural language queries
PurpleAir MCP Tools for Vercel AI SDK (10)
These 10 tools become available when you connect PurpleAir to Vercel AI SDK via MCP:
get_indoor_sensors
These sensors measure air quality inside buildings, homes, and enclosed spaces. Useful for indoor air quality assessments, HVAC monitoring, and workspace health studies. Get all indoor PurpleAir sensors
get_outdoor_sensors
These are sensors measuring ambient outdoor air quality. Returns current PM2.5, temperature, humidity and other measurements for each sensor. Useful for regional air quality monitoring, wildfire smoke tracking, and urban pollution studies. Get all outdoor (outside) PurpleAir sensors
get_pm25_sensors
5 (fine particulate matter) measurements. PM2.5 is the most important air quality indicator — particles smaller than 2.5 micrometers that can penetrate deep into lungs and bloodstream. Returns current PM2.5 concentrations along with location data. Essential for health advisories, wildfire smoke tracking, and urban pollution monitoring. Get sensors with PM2.5 measurements
get_sensor_data
Returns PM2.5, PM1.0, PM10.0 particle concentrations, temperature, humidity, pressure, VOC levels, and other measurements depending on the sensor model. Use the fields parameter to specify which measurements to return. Essential for monitoring air quality at a specific location. Get real-time data from a specific PurpleAir sensor
get_sensor_history
Returns time-series data for the requested fields (PM2.5, temperature, humidity, etc.) at regular intervals. Use start_timestamp and end_timestamp (Unix timestamps) to define the time range. The average parameter controls data aggregation (e.g. 60 for 1-minute averages, 3600 for hourly). Essential for analyzing air quality trends, identifying pollution events, and compliance reporting. Get historical air quality data from a PurpleAir sensor
get_sensor_history_csv
Same functionality as get_sensor_history but returns data as CSV instead of JSON. Use for offline analysis, charting, or compliance reporting. Requires start_timestamp and end_timestamp parameters. Get historical sensor data in CSV format for analysis
get_sensors_by_bounding_box
Provide the northwest (nwlat, nwlng) and southeast (selat, selng) corner coordinates. Perfect for mapping air quality across a city, neighborhood, or region. Returns all sensors in the area with current readings. Use with fields parameter to customize returned data. Get all sensors within a geographic bounding box
get_sensors_by_index
Provide comma-separated sensor indices in the show_only parameter. Useful when you already know the sensor indices from a previous query and want to get fresh readings without fetching all sensors. Get data for specific sensor(s) by their indices
get_sensors_near_me
Internally uses a bounding box around the point to find nearby sensors. Useful for identifying the closest PurpleAir monitor to any address or coordinate. Returns sensors sorted by proximity with current air quality readings. Find PurpleAir sensors near a specific location
list_sensors
Use the location_type parameter to filter by sensor type (outside=0, inside=1). Use the fields parameter to specify which data fields to return (e.g. name,latitude,longitude,pm2.5_atm,temperature,humidity). By default returns basic sensor info. Use show_only to filter by specific sensor indices (comma-separated). Use modified_since (Unix timestamp) to get only sensors updated after a specific time. Results include sensor metadata and real-time air quality measurements. List PurpleAir air quality sensors with optional filters
Example Prompts for PurpleAir in Vercel AI SDK
Ready-to-use prompts you can give your Vercel AI SDK agent to start working with PurpleAir immediately.
"What's the air quality near San Francisco right now?"
"Show me the PM2.5 trend for sensor 12345 over the last 24 hours."
"Find all outdoor sensors in Los Angeles and show me their PM2.5 readings."
Troubleshooting PurpleAir MCP Server with Vercel AI SDK
Common issues when connecting PurpleAir to Vercel AI SDK through the Vinkius, and how to resolve them.
createMCPClient is not a function
npm install @ai-sdk/mcpPurpleAir + Vercel AI SDK FAQ
Common questions about integrating PurpleAir MCP Server with Vercel AI SDK.
How does the Vercel AI SDK connect to MCP servers?
createMCPClient from @ai-sdk/mcp and pass the server URL. The SDK discovers all tools and provides typed TypeScript interfaces for each one.Can I use MCP tools in Edge Functions?
Does it support streaming tool results?
useChat and streamText that handle tool calls and display results progressively in the UI.Connect PurpleAir with your favorite client
Step-by-step setup guides for every MCP-compatible client and framework:
Anthropic's native desktop app for Claude with built-in MCP support.
AI-first code editor with integrated LLM-powered coding assistance.
GitHub Copilot in VS Code with Agent mode and MCP support.
Purpose-built IDE for agentic AI coding workflows.
Autonomous AI coding agent that runs inside VS Code.
Anthropic's agentic CLI for terminal-first development.
Python SDK for building production-grade OpenAI agent workflows.
Google's framework for building production AI agents.
Type-safe agent development for Python with first-class MCP support.
TypeScript toolkit for building AI-powered web applications.
TypeScript-native agent framework for modern web stacks.
Python framework for orchestrating collaborative AI agent crews.
Leading Python framework for composable LLM applications.
Data-aware AI agent framework for structured and unstructured sources.
Microsoft's framework for multi-agent collaborative conversations.
Connect PurpleAir to Vercel AI SDK
Get your token, paste the configuration, and start using 10 tools in under 2 minutes. No API key management needed.
