View as Markdown

Uber Integration

Manage Uber get profile, list products, estimate price, estimate time, list requests

The Uber integration provides access to manage Uber get profile, list products, estimate price, estimate time, list requests through the Integrate MCP server.

Installation

The Uber integration is included with the SDK:

import { uberIntegration } from "integrate-sdk/server";

Setup

1. Create an Uber OAuth App

  1. Create an OAuth application for Uber
  2. Configure your redirect URI
  3. Note your Client ID and Client Secret

2. Configure the Integration on Your Server

Add the Uber integration to your server configuration. The integration automatically reads UBER_CLIENT_ID and UBER_CLIENT_SECRET from your environment variables:

import { createMCPServer, uberIntegration } from "integrate-sdk/server";
 
export const { client: serverClient } = createMCPServer({
  apiKey: process.env.INTEGRATE_API_KEY,
  integrations: [
    uberIntegration({
      scopes: ["profile", "request", "history", "places"], // Optional
    }),
  ],
});

You can override the environment variables by passing explicit values:

uberIntegration({
  clientId: process.env.CUSTOM_UBER_ID,
  clientSecret: process.env.CUSTOM_UBER_SECRET,
      scopes: ["profile", "request", "history", "places"], // Optional
});

3. Client-Side Usage

The default client automatically includes all integrations. You can use it directly:

import { client } from "integrate-sdk";
 
await client.authorize("uber");
const result = await client.uber.getProfile({});
 
console.log(result);

If you're using a custom client, add the integration to the integrations array:

import { createMCPClient, uberIntegration } from "integrate-sdk";
 
const customClient = createMCPClient({
  integrations: [uberIntegration()],
});

Configuration Options

export interface UberIntegrationConfig {
  clientId?: string;

Default Scopes

These defaults are applied unless you override scopes in the integration config:

  • profile
  • request
  • history
  • places

Tools

uber_get_profile

Get profile

No parameters.

uber_list_products

List products

export interface UberListProductsParams { "latitude"?: string;

uber_estimate_price

Estimate price

export interface UberEstimatePriceParams { "start_latitude"?: string;

uber_estimate_time

Estimate time

export interface UberEstimateTimeParams { "start_latitude"?: string;

uber_list_requests

List requests

export interface UberListRequestsParams { "limit"?: number;

uber_create_request

Create request

export interface UberCreateRequestParams { request_json: string }

Notes

  • Category: Travel
  • Authentication mode: OAuth