Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
CURSOR_API_KEYYesYour Cursor API key (crsr_...)
CURSOR_API_READ_ONLYNoSet to 'true' to run in read-only mode (no write tools)false

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_api_key_infoA

Return metadata for the configured Cursor API key (GET /v1/me).

list_modelsA

List models available for Cloud Agents (GET /v1/models).

list_repositoriesA

List GitHub repos accessible via Cursor's GitHub App (GET /v1/repositories).

Strict rate limits: about 1 request/user/minute and 30/user/hour. Can be slow.

list_agentsA

List Cloud Agents for the authenticated user (GET /v1/agents).

Args: limit: Page size (1-100, default 20). cursor: Pagination cursor from a previous nextCursor. pr_url: Optional GitHub pull request URL filter. include_archived: Include archived agents (default True).

get_agentA

Get durable metadata for one Cloud Agent (GET /v1/agents/{id}).

Args: agent_id: Agent id (for example bc-...).

list_agent_runsA

List runs for a Cloud Agent, newest first (GET /v1/agents/{id}/runs).

Args: agent_id: Agent id (for example bc-...). limit: Page size (1-100, default 20). cursor: Pagination cursor from a previous nextCursor.

get_agent_runA

Get one Cloud Agent run (GET /v1/agents/{id}/runs/{runId}).

Args: agent_id: Agent id (for example bc-...). run_id: Run id (for example run-...).

stream_agent_runA

Fetch SSE events for a run (GET .../runs/{runId}/stream).

Collects the stream body until the server closes or the timeout elapses. Prefer polling get_agent_run for long-lived watches.

Args: agent_id: Agent id (for example bc-...). run_id: Run id (for example run-...). timeout_seconds: HTTP timeout for the stream request (default 60).

get_agent_usageA

Get token usage for an agent, optionally scoped to one run (GET .../usage).

Args: agent_id: Agent id (for example bc-...). run_id: Optional run id to scope usage.

list_agent_artifactsA

List artifacts produced by a Cloud Agent (GET /v1/agents/{id}/artifacts).

Args: agent_id: Agent id (for example bc-...).

download_agent_artifactB

Get a 15-minute presigned URL for an artifact (GET .../artifacts/download).

Args: agent_id: Agent id (for example bc-...). path: Relative artifact path from list_agent_artifacts (for example artifacts/screenshot.png).

list_team_membersA

List team members (GET /teams/members). Requires a Team Admin API key.

get_audit_logsA

Fetch team audit log events (GET /teams/audit-logs).

Args: start_time: Start bound (e.g. 7d, ISO8601, YYYY-MM-DD). Default ~7 days ago. end_time: End bound (e.g. now). Default now. event_types: Comma-separated event types (login, add_user, ...). search: Free-text search filter. users: Comma-separated emails or encoded user ids. page: 1-indexed page (default 1). page_size: Results per page, 1-500 (default 100).

get_daily_usage_dataA

Fetch daily team usage metrics (POST /teams/daily-usage-data; query only).

Date range cannot exceed 30 days. Without page/page_size, only active users are returned; with both, all members in range are returned.

Args: start_date_ms: Range start as epoch milliseconds. end_date_ms: Range end as epoch milliseconds. page: Optional 1-indexed page for all-members mode. page_size: Optional page size for all-members mode.

get_spending_dataA

Fetch current-cycle team spend (POST /teams/spend; query only).

Args: search_term: Filter by name/email. sort_by: One of amount, date, user (default date). sort_direction: asc or desc (default desc). page: 1-indexed page (default 1). page_size: Optional page size.

get_usage_eventsB

Fetch filtered usage events (POST /teams/filtered-usage-events; query only).

Args: start_date_ms: Optional range start as epoch milliseconds. end_date_ms: Optional range end as epoch milliseconds. users: Optional comma-separated emails or user ids. page: 1-indexed page (default 1). page_size: Page size (default 100).

list_team_repo_blocklistsB

List team repository blocklists (GET /settings/repo-blocklists/repos).

list_billing_groupsA

List billing groups for the team (GET /teams/groups).

Args: billing_cycle: Optional ISO date (YYYY-MM-DD) for the cycle; default current.

get_billing_groupA

Get one billing group (GET /teams/groups/{groupId}).

Args: group_id: Billing group id. billing_cycle: Optional ISO date (YYYY-MM-DD) for the cycle; default current.

list_organization_membersA

List organization members (GET /organizations/members).

Works with an Organization API key scoped to members:read (or broader).

Args: page: 1-indexed page (default 1). page_size: Members per page, capped at 200 (default 50).

list_private_workersA

List self-hosted pool workers (GET /v0/private-workers).

Requires the pool's service account API key.

Args: status: One of all, in_use, idle (default all). limit: Page size 1-100 (default 50). next_page_token: Pagination cursor from a previous response.

get_fleet_summaryA

Get connected/in-use worker counts (GET /v0/private-workers/summary).

get_private_workerA

Get one private worker (GET /v0/private-workers/{id}).

Args: worker_id: Worker id (for example pw_...).

list_pending_pool_requestsA

List unassigned pool requests (GET /v0/private-workers/pending-requests).

Args: limit: Page size 1-100 (default 50). page_token: Pagination cursor. repository: Optional repo URL filter (required for repo-scoped keys).

get_organization_pooled_usageA

Get org pooled usage (POST /organizations/pooled-usage; query only).

Requires Organization API key with usage:* (or admin:*).

Args: organization_id: Public org id (org_...).

get_organization_usage_eventsA

Get org-wide usage events (POST /organizations/filtered-usage-events).

Args: organization_id: Public org id (org_...). start_date_ms: Optional range start as epoch milliseconds. end_date_ms: Optional range end as epoch milliseconds. team_ids_json: Optional JSON array of team ids to include. page: 1-indexed page (default 1). page_size: Page size (default 100).

get_organization_daily_usage_dataC

Get org daily usage (POST /organizations/daily-usage-data).

Args: organization_id: Public org id (org_...). start_date_ms: Range start as epoch milliseconds. end_date_ms: Range end as epoch milliseconds. team_ids_json: Optional JSON array of team ids. page: Optional page (use with page_size). page_size: Optional page size (use with page).

get_organization_spending_dataA

Get org spend (POST /organizations/spend).

Args: organization_id: Public org id (org_...). search_term: Optional name/email filter. page: 1-indexed page (default 1). page_size: Optional page size.

list_organization_groupsA

List organization groups (GET /organizations/groups).

Args: page: 1-indexed page (default 1). page_size: Groups per page (default 50).

get_organization_groupB

Get one organization group (GET /organizations/groups/{groupId}).

Args: group_id: Organization group id (g_...).

list_organization_group_membersA

List members of an organization group (GET .../groups/{id}/members).

Args: group_id: Organization group id (g_...). page: 1-indexed page (default 1). page_size: Members per page (default 50).

get_team_analyticsA

Fetch a team analytics metric (GET /analytics/team/{metric}).

Allowed metrics: agent-edits, tabs, dau, client-versions, models, top-file-extensions, mcp, commands, plans, skills, ask-mode, conversation-insights, leaderboard, bugbot, bugbot-reviews.

Args: metric: Allowlisted metric slug (see docstring list). start_date: Optional start (ISO, YYYY-MM-DD, 7d, today, ...). end_date: Optional end date bound. users: Optional comma-separated emails or user ids. page: Optional page (leaderboard / bugbot* pagination). page_size: Optional page size. include: Required for conversation-insights (comma-separated slices: intents,complexity,categories,guidanceLevels,workTypes). repo: Optional repo filter for bugbot / bugbot-reviews (host/owner/repo). pr_number: Optional PR number filter for bugbot-reviews. dry_run: Optional filter for bugbot-reviews (true=dry-run only).

get_analytics_by_userA

Fetch a by-user analytics metric (GET /analytics/by-user/{metric}).

Allowed metrics: agent-edits, tabs, models, top-file-extensions, client-versions, mcp, commands, plans, skills, ask-mode.

Args: metric: Allowlisted metric slug. start_date: Optional start date bound. end_date: Optional end date bound. users: Optional comma-separated emails or user ids. page: Page number (default 1). page_size: Users per page (default 100, max 500 server-side).

list_ai_code_commitsA

List AI commit metrics (GET /analytics/ai-code/commits).

Args: start_date: Optional start (ISO, now, 7d). Default ~7 days ago. end_date: Optional end (ISO, now, 0d). Default now. user: Optional single-user filter (email, user_..., or numeric id). page: 1-based page (default 1). page_size: Results per page (default 100, max 1000).

download_ai_code_commits_csvA

Download AI commit metrics CSV (GET /analytics/ai-code/commits.csv).

Returns the CSV body as text under csv_text.

Args: start_date: Optional start date bound. end_date: Optional end date bound. user: Optional single-user filter.

list_ai_code_changesA

List accepted AI change metrics (GET /analytics/ai-code/changes).

Args: start_date: Optional start date bound. end_date: Optional end date bound. user: Optional single-user filter. page: 1-based page (default 1). page_size: Results per page (default 100, max 1000).

download_ai_code_changes_csvC

Download AI change metrics CSV (GET /analytics/ai-code/changes.csv).

Returns the CSV body as text under csv_text.

Args: start_date: Optional start date bound. end_date: Optional end date bound. user: Optional single-user filter.

get_ai_code_commit_detailsA

Get commit detail / blame (GET /analytics/ai-code/commits/{hash}).

Limited alpha. commit_hash may be a single hash or comma-separated list.

Args: commit_hash: Commit hash or comma-separated hashes. branch: Optional branch name filter.

list_bugbot_reposA

List repos with Bugbot settings (GET /bugbot/repos).

create_agentA

Create a Cloud Agent and enqueue its initial run (POST /v1/agents).

Args: prompt_text: Required instruction text for the agent. name: Optional display name (max 100 chars). repo_url: Optional GitHub repository URL. starting_ref: Optional branch or SHA starting point. pr_url: Optional PR URL (repo_url still required when set). model_id: Optional model id from list_models. auto_create_pr: Whether to open a PR when the run completes. work_on_current_branch: Push to starting ref instead of a new branch. mode: Initial mode: agent or plan. agent_id: Optional client-supplied id (bc-...) for idempotent create. prompt_images_json: Optional JSON array of prompt images ({data,mimeType} or {url}). mcp_servers_json: Optional JSON array (string or list) of inline MCP servers. extra_json: Optional JSON object (string or object) merged into the request body for advanced fields. Cannot overwrite keys already set by typed args (for model.params, omit model_id and pass full model).

create_agent_runB

Send a follow-up prompt to an active agent (POST /v1/agents/{id}/runs).

Args: agent_id: Agent id (for example bc-...). prompt_text: Follow-up instruction text. mode: Optional mode override: agent or plan. prompt_images_json: Optional JSON array of prompt images. mcp_servers_json: Optional JSON array of MCP servers for this run. extra_json: Optional JSON object merged into the body. Cannot overwrite prompt, mcpServers, or mode when those were set by typed args.

cancel_agent_runB

Cancel an active agent run (POST .../runs/{runId}/cancel).

Args: agent_id: Agent id (for example bc-...). run_id: Run id (for example run-...).

archive_agentA

Archive an agent so it cannot accept new runs (POST .../archive).

Args: agent_id: Agent id (for example bc-...).

unarchive_agentA

Unarchive an agent so it can accept new runs (POST .../unarchive).

Args: agent_id: Agent id (for example bc-...).

delete_agentA

Permanently delete an agent (DELETE /v1/agents/{id}). Irreversible.

Args: agent_id: Agent id (for example bc-...).

create_worker_tokenA

Mint a one-hour user-scoped worker token (POST /v1/sub-tokens).

Requires a service-account API key. Provide exactly one of email or user id. The accessToken value is redacted in the tool result.

Args: for_user_email: Active team member email. for_user_id: Active team member numeric user id.

set_user_spend_limitA

Set or clear a user's spend limit (POST /teams/user-spend-limit).

Args: user_email: Team member email. spend_limit_dollars: Integer dollar limit, or null to clear.

remove_team_memberB

Remove a member from the team (POST /teams/remove-member).

Provide exactly one of user_id or email.

Args: user_id: Encoded user id (user_...). email: Team member email.

upsert_repo_blocklistsC

Upsert repository blocklist patterns (POST .../repos/upsert).

Args: repos_json: JSON array of {url, patterns[]} objects.

delete_repo_blocklistB

Delete one repository blocklist entry (DELETE .../repos/{repoId}).

Args: repo_id: Blocklist repo id.

create_billing_groupB

Create a billing group (POST /teams/groups).

Args: name: Group name. group_type: Group type (currently only BILLING).

update_billing_groupA

Update a billing group name or directory attachment (PATCH /teams/groups/{id}).

Only one field can be updated per request per API rules.

Args: group_id: Billing group id. name: New group name. directory_group_id: Directory group id to attach. clear_directory_group: When True, detach directory sync (sends null).

delete_billing_groupC

Delete a billing group (DELETE /teams/groups/{id}). Destructive.

Args: group_id: Billing group id.

add_billing_group_membersA

Add members to a billing group (POST /teams/groups/{id}/members).

Args: group_id: Billing group id. user_ids_json: JSON array of encoded user ids.

remove_billing_group_membersC

Remove members from a billing group (DELETE /teams/groups/{id}/members).

Args: group_id: Billing group id. user_ids_json: JSON array of encoded user ids.

sync_organization_team_membershipsA

Sync org users onto linked teams (POST /organizations/team-memberships/sync).

Requires Organization API key with members:* (or admin:*).

Args: organization_id: Public org id (org_...). users_json: JSON array of {userId, teamIds[]} or {userId, destinationTeamId} entries.

add_organization_group_membersA

Add members to an org group (POST .../members/bulk-add).

Args: group_id: Organization group id (g_...). user_ids_json: JSON array of user ids (max 100 per request).

remove_organization_group_membersA

Remove members from an org group (POST .../members/bulk-remove).

Args: group_id: Organization group id (g_...). user_ids_json: JSON array of user ids (max 100 per request).

trigger_bugbot_reviewA

Queue a Bugbot review (POST /bugbot/review).

Args: pr_url: Full GitHub PR or GitLab MR URL. dry_run: When True, analyze without posting to SCM (still billed).

update_bugbot_repoA

Enable/disable Bugbot for a repo (POST /bugbot/repo/update).

Args: repo_url: Full repository URL. enabled: True to enable Bugbot, False to disable. manual_trigger_only: When True, skip automatic PR reviews.

update_bugbot_user_accessA

Update Bugbot allow/block list membership (POST /bugbot/user/update).

Team settings must already use allowlist or blocklist mode.

Args: username: GitHub/GitLab/Bitbucket username (case-insensitive). allow: Grant (True) or revoke (False) access per active list mode.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/PhillipChaffee/cursor-api-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server