Skip to main content
Glama

asana_get_project

Retrieve detailed information about a specific Asana project using its project ID, including optional fields for comprehensive project data access.

Instructions

Get detailed information about a specific project

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
project_idYesThe project ID to retrieve
opt_fieldsNoComma-separated list of optional fields to include

Implementation Reference

  • Handler logic for the 'asana_get_project' tool. Destructures project_id and opts from arguments, calls asanaClient.getProject(), and returns the JSON-stringified response.
    case "asana_get_project": {
      const { project_id, ...opts } = args;
      const response = await asanaClient.getProject(project_id, opts);
      return {
        content: [{ type: "text", text: JSON.stringify(response) }],
      };
    }
  • Tool schema definition for 'asana_get_project', including name, description, and input validation schema requiring project_id.
    export const getProjectTool: Tool = {
      name: "asana_get_project",
      description: "Get detailed information about a specific project",
      inputSchema: {
        type: "object",
        properties: {
          project_id: {
            type: "string",
            description: "The project ID to retrieve"
          },
          opt_fields: {
            type: "string",
            description: "Comma-separated list of optional fields to include"
          }
        },
        required: ["project_id"]
      }
    };
  • Registration of all tools including getProjectTool in the all_tools array, which is filtered and exported as list_of_tools.
    const all_tools: Tool[] = [
      listWorkspacesTool,
      searchProjectsTool,
      searchTasksTool,
      getTaskTool,
      createTaskTool,
      getStoriesForTaskTool,
      updateTaskTool,
      getProjectTool,
      getProjectTaskCountsTool,
      getProjectSectionsTool,
      createTaskStoryTool,
      addTaskDependenciesTool,
      addTaskDependentsTool,
      createSubtaskTool,
      getMultipleTasksByGidTool,
      getProjectStatusTool,
      getProjectStatusesForProjectTool,
      createProjectStatusTool,
      deleteProjectStatusTool,
      setParentForTaskTool,
      getTasksForTagTool,
      getTagsForWorkspaceTool,
    ];
  • 'asana_get_project' is included in READ_ONLY_TOOLS list, enabling it in read-only mode.
    const READ_ONLY_TOOLS = [
      'asana_list_workspaces',
      'asana_search_projects',
      'asana_search_tasks',
      'asana_get_task',
      'asana_get_task_stories',
      'asana_get_project',
      'asana_get_project_task_counts',
      'asana_get_project_status',
      'asana_get_project_statuses',
      'asana_get_project_sections',
      'asana_get_multiple_tasks_by_gid',
      'asana_get_tasks_for_tag',
      'asana_get_tags_for_workspace'
    ];
  • Helper method in AsanaClientWrapper that wraps the Asana SDK ProjectsApi.getProject call, handling optional fields.
    async getProject(projectId: string, opts: any = {}) {
      // Only include opts if opt_fields was actually provided
      const options = opts.opt_fields ? opts : {};
      const response = await this.projects.getProject(projectId, options);
      return response.data;
    }

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/roychri/mcp-server-asana'

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