portkey
Read AI-gateway analytics, configs, virtual keys, workspaces and users; log request feedback.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"portkey": {
"url": "https://portkey.usefulapi.io/mcp"
}
}
}Remote-Endpunkte
https://portkey.usefulapi.io/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (16)
🟢portkey_get_analytics_graph(metric, time_of_generation_min, time_of_generation_max, total_units, virtual_keys, ...)
Get a time-series analytics graph for a single metric (cost, requests, tokens, latency, error-rate, cache-hit-rate, …) over a time window. Optionally scope by virtual keys, configs, or metadata. Portkey: GET /analytics/graphs/{metric}.
Eingabe-Schema
{
"type": "object",
"properties": {
"metric": {
"type": "string",
"enum": [
"cost",
"requests",
"tokens",
"latency",
"error-rate",
"errors",
"status-codes",
"requests-per-user",
"rescued-requests",
"cache-hit-rate",
"cache-hit-latency",
"users",
"weighted-feedback"
],
"description": "Which metric graph to return."
},
"time_of_generation_min": {
"type": "string",
"description": "Start of the window (ISO8601, format YYYY-MM-DDTHH:MM:SS±HH:MM)."
},
"time_of_generation_max": {
"type": "string",
"description": "End of the window (ISO8601, format YYYY-MM-DDTHH:MM:SS±HH:MM)."
},
"total_units": {
"description": "Bucket size for the series, e.g. \"day\" or \"hour\".",
"type": "string"
},
"virtual_keys": {
"description": "Comma-separated virtual key slugs to scope the graph.",
"type": "string"
},
"configs": {
"description": "Comma-separated config slugs to scope the graph.",
"type": "string"
},
"metadata": {
"description": "JSON string of metadata key/values to scope the graph.",
"type": "string"
}
},
"required": [
"metric",
"time_of_generation_min",
"time_of_generation_max"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_get_analytics_group(group, time_of_generation_min, time_of_generation_max, current_page, page_size)
Get grouped analytics (aggregated by models, users, or metadata) over a time window. Portkey: GET /analytics/groups/{group}.
Eingabe-Schema
{
"type": "object",
"properties": {
"group": {
"type": "string",
"enum": [
"models",
"users",
"metadata"
],
"description": "Dimension to group the analytics by."
},
"time_of_generation_min": {
"type": "string",
"description": "Start of the window (ISO8601, format YYYY-MM-DDTHH:MM:SS±HH:MM)."
},
"time_of_generation_max": {
"type": "string",
"description": "End of the window (ISO8601, format YYYY-MM-DDTHH:MM:SS±HH:MM)."
},
"current_page": {
"description": "Page number (0-based) for pagination. Default 0.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"page_size": {
"description": "Number of records per page. Default 50.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"required": [
"group",
"time_of_generation_min",
"time_of_generation_max"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_list_configs(workspace_id)
List gateway configs (routing/fallback/retry/cache rulesets applied to requests). Portkey: GET /configs.
Eingabe-Schema
{
"type": "object",
"properties": {
"workspace_id": {
"description": "Scope configs to a workspace id/slug.",
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_get_config(slug)
Get a single gateway config by slug (or id), including its routing rules. Portkey: GET /configs/{slug}.
Eingabe-Schema
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "The config slug or id."
}
},
"required": [
"slug"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_list_api_keys(workspace_id, current_page, page_size)
List API keys in the organization/workspace (metadata only — secrets are never returned). Portkey: GET /api-keys.
Eingabe-Schema
{
"type": "object",
"properties": {
"workspace_id": {
"description": "Scope keys to a workspace id/slug.",
"type": "string"
},
"current_page": {
"description": "Page number (0-based) for pagination. Default 0.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"page_size": {
"description": "Number of records per page. Default 50.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_get_api_key(id)
Get a single API key's metadata by id (the secret is never returned). Portkey: GET /api-keys/{id}.
Eingabe-Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The API key id."
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_list_virtual_keys(current_page, page_size)
List virtual keys (the aliases that map to provider credentials + budget/rate limits used in requests). Portkey: GET /virtual-keys.
Eingabe-Schema
{
"type": "object",
"properties": {
"current_page": {
"description": "Page number (0-based) for pagination. Default 0.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"page_size": {
"description": "Number of records per page. Default 50.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_get_virtual_key(slug)
Get a single virtual key by slug, including its provider + limits. Portkey: GET /virtual-keys/{slug}.
Eingabe-Schema
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "The virtual key slug."
}
},
"required": [
"slug"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_list_workspaces(current_page, page_size)
List workspaces in the organization. Portkey: GET /workspaces.
Eingabe-Schema
{
"type": "object",
"properties": {
"current_page": {
"description": "Page number (0-based) for pagination. Default 0.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"page_size": {
"description": "Number of records per page. Default 50.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_get_workspace(id)
Get a single workspace by slug/id. Portkey: GET /workspaces/{id}.
Eingabe-Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The workspace slug or id."
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_list_workspace_members(id, current_page, page_size)
List members of a workspace (users + their roles). Portkey: GET /workspaces/{id}/members.
Eingabe-Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The workspace slug or id."
},
"current_page": {
"description": "Page number (0-based) for pagination. Default 0.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"page_size": {
"description": "Number of records per page. Default 50.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_list_users(current_page, page_size, role, email)
List users in the organization. Filter by role or email. Portkey: GET /users.
Eingabe-Schema
{
"type": "object",
"properties": {
"current_page": {
"description": "Page number (0-based) for pagination. Default 0.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"page_size": {
"description": "Number of records per page. Default 50.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"role": {
"description": "Filter users by role (e.g. admin, member).",
"type": "string"
},
"email": {
"description": "Filter users by email address.",
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_get_user(id)
Get a single user by id. Portkey: GET /users/{id}.
Eingabe-Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The user id."
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_list_user_invites(current_page, page_size)
List pending user invitations to the organization. Portkey: GET /user-invites.
Eingabe-Schema
{
"type": "object",
"properties": {
"current_page": {
"description": "Page number (0-based) for pagination. Default 0.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"page_size": {
"description": "Number of records per page. Default 50.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢portkey_list_audit_logs(current_page, page_size)
List audit log entries (admin actions across the organization). Portkey: GET /audit-logs.
Eingabe-Schema
{
"type": "object",
"properties": {
"current_page": {
"description": "Page number (0-based) for pagination. Default 0.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"page_size": {
"description": "Number of records per page. Default 50.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴portkey_create_feedback(trace_id, value, weight, metadata)
WRITES a feedback record into the Portkey account, attached to a request/trace by trace_id. Use for logging a quality score (typically -10..10) with an optional weight (0..1) and metadata. Portkey: POST /feedback.
Eingabe-Schema
{
"type": "object",
"properties": {
"trace_id": {
"type": "string",
"description": "The request/trace id to attach feedback to."
},
"value": {
"type": "number",
"description": "Feedback score, typically -10..10."
},
"weight": {
"description": "Relative weight of this feedback, 0..1.",
"type": "number"
},
"metadata": {
"description": "Arbitrary metadata key/values.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"trace_id",
"value"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Empfohlene Prompts
portkey_get_analytics_graphportkey_get_analytics_graphportkey_list_configsportkey_list_configsportkey_list_configsportkey_get_analytics_graphCommunity
Nachweis