Skip to main content
Glama

get_projects

Retrieve OpenAI projects for your organization to monitor and manage API usage, with options to include archived projects.

Instructions

Fetches OpenAI projects for the current organization.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
include_archivedNoWhether to include archived projects. Defaults to False.

Implementation Reference

  • The @mcp.tool decorator registers the get_projects tool with the FastMCP server.
    @mcp.tool(description="Fetches OpenAI projects for the current organization.")
  • The async handler function that fetches OpenAI projects using the Admin API, paginates results, and processes timestamps.
    async def get_projects( include_archived: Annotated[ bool, "Whether to include archived projects. Defaults to False." ] = False, ) -> list[dict]: """Fetches the projects for the current organization.""" base_url = "https://api.openai.com/v1/organization/projects" params: list[tuple[str, str]] = [ ("include_archived", include_archived), ("limit", 180), ] base_params = params.copy() url = f"{base_url}?{urlencode(base_params)}" results: list[dict] = [] async with httpx.AsyncClient( timeout=60, headers={"Authorization": f"Bearer {OPENAI_ADMIN_API_KEY}"}, ) as client: while url: response = await client.get(url) response.raise_for_status() data = response.json() items = data["data"] for item in items: item["created_at"] = datetime.fromtimestamp(item["created_at"]) if "archived_at" in item and item["archived_at"]: item["archived_at"] = datetime.fromtimestamp(item["archived_at"]) results.append(item) last_id = data.get("last_id") has_more = data.get("has_more") url = None if last_id and has_more: params = base_params.copy() params.append(("after", last_id)) url = f"{base_url}?{urlencode(params)}" # sleep to avoid rate limiting await asyncio.sleep(1.0) return results

Other Tools

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/Supermaxman/mcp-server-openai'

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