diff --git a/maca_tools/src/mcf2json.c b/maca_tools/src/mcf2json.c
index df06d1c6a62dd2a661f23386e23760e9de00ef2b..9efa32c0facb3d2f71e49d97452ce014eceb8cbb 100644
--- a/maca_tools/src/mcf2json.c
+++ b/maca_tools/src/mcf2json.c
@@ -129,14 +129,32 @@ void print_footer(FILE *output_file)
 }
 
 
-void print_header(FILE *output_file)
+void print_header(FILE *output_file, mcd *mcd_struct)
 {
+  int pos_col =  mcd_get_pos_col(mcd_struct);
+  int label_col =  mcd_get_label_col(mcd_struct);
+  dico *dico_pos = mcd_struct->dico_array[pos_col];
+  dico *dico_label = mcd_struct->dico_array[label_col];
+  int i;
+
+  printf("dico label : %d dico = %d\n", label_col, dico_label);
+  
   fprintf(output_file, "{\n");
   fprintf(output_file, "\"header\":{\n");
   fprintf(output_file, "\"id\": \"\",\n");
   fprintf(output_file, "\"timestamp\": \"\",\n");
-  fprintf(output_file, "\"labels_segment\": \"\",\n");
-  fprintf(output_file, "\"labels_link\": \"\",\n");
+  fprintf(output_file, "\"labels_segment\": \"");
+  for(i=0; i < dico_pos->nbelem; i++){
+     fprintf(output_file, " %s", dico_pos->array[i]); 
+  }
+  fprintf(output_file, "\",\n");
+
+  fprintf(output_file, "\"labels_link\": \"");
+  for(i=0; i < dico_label->nbelem; i++){
+     fprintf(output_file, " %s", dico_label->array[i]); 
+  }
+  fprintf(output_file, "\",\n");
+  
   fprintf(output_file, "},\n");
   
   fprintf(output_file, "\"annotations\":{\n");
@@ -306,10 +324,13 @@ int main(int argc, char *argv[])
   int sentence_nb = 0;
 
   mcf2json_check_options(ctx);
+
+  mcd_extract_dico_from_corpus(ctx->mcd_struct, ctx->mcf_filename);
+
   output_file = (ctx->conll_filename)? myfopen_no_exit(ctx->conll_filename, "w"): stdout;
   wb = word_buffer_load_mcf(ctx->mcf_filename, ctx->mcd_struct);
 
-  print_header(output_file);
+  print_header(output_file, ctx->mcd_struct);
   fprintf(output_file, "\"documents\": [");
   do{
     w = word_buffer_b0(wb);