Tools MCP and External Integration
Function Calling — References
Function calling › References
The research on models deciding to invoke something, and the serialisation and schema standards the invocation is expressed in.
Models selecting and invoking calls
- Toolformer: Language Models Can Teach Themselves to Use Tools (Schick et al., 2023), arXiv:2302.04761 — self-supervised insertion of API calls, and the finding that a model can learn when a call is worth its cost.
- ReAct: Synergizing Reasoning and Acting in Language Models (Yao et al., 2022), arXiv:2210.03629 — the interleaving of reasoning steps and actions that the modern call loop is a structured version of.
- Gorilla: Large Language Model Connected with Massive APIs (Patil et al., 2023), arXiv:2305.15334 — invocation accuracy against a large API surface, and hallucinated API arguments treated as a measurable error class.
- ToolLLM: Facilitating Large Language Models to Master 16000+ Real-world APIs (Qin et al., 2023), arXiv:2307.16789 — what happens to selection when the candidate set is far larger than a prompt can hold.
- Berkeley Function Calling Leaderboard — an evaluation suite covering simple, parallel, and multiple-call invocation, plus cases where the correct behaviour is to call nothing. Named without a link, as its hosting path has changed across versions.
Expressing the call
- JSON Schema — the declaration vocabulary; the practical question for any runtime is which of its keywords are enforced rather than merely accepted.
- RFC 8259: The JavaScript Object Notation (JSON) Data Interchange Format — the serialisation itself, including the number-precision and duplicate-key questions that surface when a model emits a long identifier.
Results as an attack surface
- Not What You've Signed Up For: Compromising Real-World LLM-Integrated Applications with Indirect Prompt Injection (Greshake et al., 2023), arXiv:2302.12173 — why content returned from a tool cannot be treated as trusted input to the next call decision.