Skip to main content
Glama
taehojo
by taehojo

annotate_regulatory_context

Analyze genetic variants to identify regulatory elements and their functional impact across tissues, supporting variant annotation pipelines and comprehensive genomic reports.

Instructions

Provide comprehensive regulatory annotation for a variant.

Returns detailed regulatory context including all modalities.

Perfect for: variant annotation pipelines, comprehensive reports.

Example: "Annotate regulatory context of chr7:12345678C>A"

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
chromosomeYes
positionYes
refYes
altYes
tissue_typeNo

Implementation Reference

  • Tool schema definition including input validation and description.
    export const ANNOTATE_REGULATORY_CONTEXT_TOOL: Tool = {
      name: 'annotate_regulatory_context',
      description: `Provide comprehensive regulatory annotation for a variant.
    
    Returns detailed regulatory context including all modalities.
    
    Perfect for: variant annotation pipelines, comprehensive reports.
    
    Example: "Annotate regulatory context of chr7:12345678C>A"`,
      inputSchema: {
        type: 'object',
        properties: {
          chromosome: { type: 'string', pattern: '^chr([1-9]|1[0-9]|2[0-2]|X|Y)$' },
          position: { type: 'number', minimum: 1 },
          ref: { type: 'string', pattern: '^[ATGCatgc]+$' },
          alt: { type: 'string', pattern: '^[ATGCatgc]+$' },
          tissue_type: { type: 'string' },
        },
        required: ['chromosome', 'position', 'ref', 'alt'],
      },
    };
  • src/tools.ts:709-730 (registration)
    Tool registration in the ALL_TOOLS array used by MCP listTools handler.
    export const ALL_TOOLS: Tool[] = [
      PREDICT_VARIANT_TOOL,
      BATCH_SCORE_TOOL,
      ASSESS_PATHOGENICITY_TOOL,
      PREDICT_TISSUE_SPECIFIC_TOOL,
      COMPARE_VARIANTS_TOOL,
      PREDICT_SPLICE_IMPACT_TOOL,
      PREDICT_EXPRESSION_IMPACT_TOOL,
      ANALYZE_GWAS_LOCUS_TOOL,
      COMPARE_ALLELES_TOOL,
      BATCH_TISSUE_COMPARISON_TOOL,
      PREDICT_TF_BINDING_IMPACT_TOOL,
      PREDICT_CHROMATIN_IMPACT_TOOL,
      COMPARE_PROTECTIVE_RISK_TOOL,
      BATCH_PATHOGENICITY_FILTER_TOOL,
      COMPARE_VARIANTS_SAME_GENE_TOOL,
      PREDICT_ALLELE_SPECIFIC_EFFECTS_TOOL,
      ANNOTATE_REGULATORY_CONTEXT_TOOL,
      BATCH_MODALITY_SCREEN_TOOL,
      GENERATE_VARIANT_REPORT_TOOL,
      EXPLAIN_VARIANT_IMPACT_TOOL,
    ];
  • MCP server request handler for the tool call.
    case 'annotate_regulatory_context': {
      const params = validateInput(variantPredictionSchema, args) as VariantPredictionParams;
      const result = await getClient().annotateRegulatoryContext(params);
      return {
        content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
      };
    }
  • Core tool implementation that performs regulatory context annotation using AlphaGenome predictions.
    def annotate_regulatory_context(client, params: Dict[str, Any]) -> Dict[str, Any]:
        """Add regulatory annotations to variant."""
        result = predict_variant_effect(client, params)
    
        # Determine regulatory context from predictions
        predictions = result['predictions']
        context = []
    
        if predictions.get('rna_seq', {}).get('fold_change', 0) != 0:
            context.append('expression_QTL')
        if predictions.get('splice', {}).get('delta', 0) > 0.1:
            context.append('splice_site')
        if predictions.get('tf_binding'):
            context.append('TF_binding_site')
    
        return {
            'variant': result['variant'],
            'regulatory_context': context,
            'predictions': predictions,
            'impact_level': result['interpretation']['impact_level']
        }
  • Client wrapper method that invokes the Python bridge for the tool action.
    async annotateRegulatoryContext(params: VariantPredictionParams): Promise<any> {
      try {
        return await this.callPythonBridge('annotate_regulatory_context', params);
      } catch (error) {
        if (error instanceof ApiError) throw error;
        throw new ApiError(`Regulatory context annotation failed: ${error}`, 500);
      }
    }

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/taehojo/alphagenome-mcp'

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