{"paper":{"title":"Firefly: Illuminating Large-Scale Verified Tool-Call Data Generation from Real APIs","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","headline":"FireFly inverts the data synthesis pipeline to generate verified tool-calling trajectories directly from real API explorations.","cross_cats":["cs.CL"],"primary_cat":"cs.SE","authors_text":"Benoit Dumoulin, Chen Luo, Dakuo Wang, Hanqing Lu, Hui Liu, Jing Huang, Jiri Gesi, Qi He, Xianfeng Tang, Yimeng Zhang, Yingzhou Lu, Yisi Sang, Yuxuan Lu, Zhenwei Dai, Ziyi Wang","submitted_at":"2026-05-17T17:38:17Z","abstract_excerpt":"Training tool-calling agents requires large-scale trajectory data with verifiable labels, yet existing approaches either synthesize environments that diverge from real API behavior or generate tasks without ground-truth outcomes for verification. We present FireFly, a pipeline for generating verified tool-call data from real-world MCP servers. Our key insight is to invert the standard synthesis pipeline: rather than generating tasks and hoping they are solvable, we first let a strong LLM explore real APIs along graph-guided DAG structures, then synthesize tasks backward from observed outcomes,"},"claims":{"count":4,"items":[{"kind":"strongest_claim","text":"A 4B-parameter model trained with GRPO on FireFly matches Claude Sonnet 4.6 on our held-out test set and shows improvements on multiple tool-calling benchmarks including Tau2-Bench, MCPMark, and MCP-Atlas.","source":"verdict.strongest_claim","status":"machine_extracted","claim_id":"C1","attestation":"unclaimed"},{"kind":"weakest_assumption","text":"The assumption that backward synthesis from observed API outcomes produces tasks whose labels remain correct and useful when the same tasks are later executed in the retrieval-augmented simulator or on live APIs (abstract, paragraph describing the pipeline inversion).","source":"verdict.weakest_assumption","status":"machine_extracted","claim_id":"C2","attestation":"unclaimed"},{"kind":"one_line_summary","text":"FireFly inverts task synthesis by exploring real MCP servers first via pairwise tool graphs and sub-DAG sampling, then generates 5,144 verified tasks backward from outcomes to train a 4B model that matches Claude Sonnet 4.6 on tool-calling benchmarks.","source":"verdict.one_line_summary","status":"machine_extracted","claim_id":"C3","attestation":"unclaimed"},{"kind":"headline","text":"FireFly inverts the data synthesis pipeline to generate verified tool-calling trajectories directly from real API explorations.","source":"verdict.pith_extraction.headline","status":"machine_extracted","claim_id":"C4","attestation":"unclaimed"}],"snapshot_sha256":"bf71460c6987eb65a7ece163769354812f38b09e2353f8e536d9f4e8359cb66b"},"source":{"id":"2605.17558","kind":"arxiv","version":1},"verdict":{"id":"8e72320f-fb29-47a2-8002-b3a38e738155","model_set":{"reader":"grok-4.3"},"created_at":"2026-05-19T22:26:02.189614Z","strongest_claim":"A 4B-parameter model trained with GRPO on FireFly matches Claude Sonnet 4.6 on our held-out test set and shows improvements on multiple tool-calling benchmarks including Tau2-Bench, MCPMark, and MCP-Atlas.","one_line_summary":"FireFly inverts task synthesis by exploring real MCP servers first via pairwise tool graphs and sub-DAG sampling, then generates 5,144 verified tasks backward from outcomes to train a 4B model that matches Claude Sonnet 4.6 on tool-calling benchmarks.","pipeline_version":"pith-pipeline@v0.9.0","weakest_assumption":"The assumption that backward synthesis from observed API outcomes produces tasks whose labels remain correct and useful when the same tasks are later executed in the retrieval-augmented simulator or on live APIs (abstract, paragraph describing the pipeline inversion).","pith_extraction_headline":"FireFly inverts the data synthesis pipeline to generate verified tool-calling trajectories directly from real API explorations."},"integrity":{"clean":true,"summary":{"advisory":0,"critical":0,"by_detector":{},"informational":0},"endpoint":"/pith/2605.17558/integrity.json","findings":[],"available":true,"detectors_run":[{"name":"doi_title_agreement","ran_at":"2026-05-19T22:31:19.574986Z","status":"completed","version":"1.0.0","findings_count":0},{"name":"doi_compliance","ran_at":"2026-05-19T22:31:06.514378Z","status":"completed","version":"1.0.0","findings_count":0},{"name":"ai_meta_artifact","ran_at":"2026-05-19T21:33:23.603011Z","status":"skipped","version":"1.0.0","findings_count":0},{"name":"claim_evidence","ran_at":"2026-05-19T21:21:57.536094Z","status":"completed","version":"1.0.0","findings_count":0}],"snapshot_sha256":"23031d6f7fc0b70c0c3e9f8593f06c944712f6a2a270d10084bc53d109f0d44d"},"references":{"count":25,"sample":[{"doi":"","year":2026,"title":"MCP-Atlas: A Large-Scale Benchmark for Tool-Use Competency with Real MCP Servers, May 2026","work_id":"f6630c64-4616-44e2-98ca-63891932848f","ref_index":1,"cited_arxiv_id":"","is_internal_anchor":false},{"doi":"","year":2025,"title":"$\\tau^2$-Bench: Evaluating Conversational Agents in a Dual-Control Environment","work_id":"3a498b1a-455f-4667-b572-c5216c99a89c","ref_index":2,"cited_arxiv_id":"2506.07982","is_internal_anchor":true},{"doi":"","year":2021,"title":"Evaluating Large Language Models Trained on Code","work_id":"042493e9-b26f-4b4e-bbde-382072ca9b08","ref_index":3,"cited_arxiv_id":"2107.03374","is_internal_anchor":true},{"doi":"","year":2025,"title":"Scaling Agent Learning via Experience Synthesis, November 2025","work_id":"c4ed3596-4df7-4a87-bc6b-660810a70685","ref_index":4,"cited_arxiv_id":"","is_internal_anchor":false},{"doi":"","year":2023,"title":"API-Bank: A Comprehensive Benchmark for Tool-Augmented LLMs","work_id":"a20d9332-ab34-485c-a060-1ba47cc98930","ref_index":5,"cited_arxiv_id":"2304.08244","is_internal_anchor":true}],"resolved_work":25,"snapshot_sha256":"19a5624ae0a7d4c4983df0b8fe4a12fe226931faf83b0dd0065460f2ebda87d4","internal_anchors":10},"formal_canon":{"evidence_count":1,"snapshot_sha256":"a31ef12599958e22a50234bf187b0f56c8f45dbff71ab62f7f55ed4aa5a9bdaf"},"author_claims":{"count":0,"strong_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"builder_version":"pith-number-builder-2026-05-17-v1"}