500 Skills, Zero Fine-Tuning: LinkedIn's Playbook for AI Agents — Ajay Prakash, LinkedIn
Read the talk
How LinkedIn Gives Coding Agents the Context to Finish a Job
Ajay Prakash explains how internal tools, modular playbooks and a three-tool discovery interface help agents navigate LinkedIn’s systems, carry out workflows and preserve what they learn.
From a talk by Ajay Prakash
At a glance
Ideas worth remembering
Reliable workflows require both access to internal systems and procedures for using them. Code search supplies examples; playbooks supply task instructions.
Modular playbooks and the three meta tools apply progressive retrieval at two levels: fetch the procedure needed for the task, and retrieve capability details after discovering relevant tools.
Repository changes preserve useful learning beyond a session. Agents propose corrections to stale or incomplete playbooks, while local and central playbooks separate repository-specific knowledge from shared guidance.
The incident example places human confirmation before mitigation. The reported speed improvement, adoption figures and 30–40-tool degradation threshold illustrate LinkedIn’s experience without establishing general performance guarantees.
An incident shows what the system is meant to enable
Ajay Prakash introduces LinkedIn’s approach to context engineering through an on-call scenario: an engineer responsible for critical services receives an error-spike alert and gives its link to a coding agent. The agent first retrieves company instructions for debugging alerts, identifies the affected service, then retrieves instructions specific to that service. The workflow narrows from general procedure to the context needed for one investigation.
Following those instructions, the agent fetches logs and metrics, locates the issue in the error logs and works out mitigation steps. It presents the diagnosis and proposed actions to the engineer. Human confirmation comes before the agent applies the mitigation, making the handoff between investigation and operational action explicit.
The agent then updates the incident-management system with the findings, metrics and dashboards, checks out the code and creates a pull request addressing the underlying cause. Prakash says teams at LinkedIn use agents this way and describes work taking a few minutes that would otherwise take a few hours. This is a reported operational example rather than a controlled timing comparison. He attributes the capability to a system of contextual agent playbooks and tools.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Why ordinary coding agents struggled inside LinkedIn
LinkedIn initially distributed coding agents to engineers to improve productivity. Prakash describes a mismatch between models trained on public repositories and work in a mature enterprise codebase: the agents lacked knowledge of LinkedIn’s internal frameworks and systems. They stalled, hallucinated or invented incorrect details. Engineers had to supply corrective prompts, sometimes spending more time steering the agent than writing the code themselves, and many returned to manual coding.
The missing context covered a substantial stack: over a thousand repositories forming thousands of microservices and applications, internal frameworks and libraries, custom databases, an experimentation and tracking platform, and an internal configuration-management system. New engineers attend a week-long boot camp to become familiar with these systems. The team’s target was therefore more demanding than plausible code generation: an agent should produce correct code whose quality engineers could trust as they would code written by another engineer.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Code search gives agents working examples
The team built an internal MCP server, starting with code search. LinkedIn already had a search system that engineers could use across thousands of repositories with keywords and custom filters. Exposing that capability through MCP let an agent investigate how LinkedIn implements a particular task, retrieve relevant examples and use those findings both to answer questions and to implement changes. Existing internal code became accessible evidence for how to work within the company’s stack.
The team added documents, Jira, Slack, data platforms and feature flags. Prakash describes their value as compounding: an engineer could combine product requirements, design documents and Jira tasks with code evidence. These sources supplied different parts of the task’s context, giving the agent access to both the intended change and examples of how to implement it.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Access does not supply a reliable procedure
Tool access improved basic answers and code discovery, but even somewhat complex workflows remained unreliable from beginning to end. The missing ingredient was procedural knowledge: how to fix a particular error, configure a system or interpret an error log. That knowledge was scattered across documents, wikis and Slack conversations, with outdated and duplicate material mixed in. An agent could reach the sources and still get lost while deciding which guidance to follow.
Two further problems made repeated investigation expensive. Every tool output occupied context space; as the context filled, the agent compacted it and could lose information needed for the ongoing task, forcing it to repeat work. Even when it successfully assembled the necessary knowledge, it lacked durable memory for retaining that information across sessions. A later request could start the same discovery process from scratch.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Playbooks return instructions through the tool interface
LinkedIn’s answer was to make instructions and prompts available through MCP as playbooks. A playbook appears like a regular tool, with a name and description that help the agent decide whether to invoke it. Invocation returns the playbook’s instructions and context as tool output. The same interface thus provides operational capabilities and procedures explaining how to combine those capabilities for a task.
Prakash uses setting up an Airflow DAG at LinkedIn as an example. The agent identifies the relevant playbook, fetches its instructions and then follows them while invoking the tools needed to complete the setup. Engineers can contribute this knowledge by creating a playbook, checking it into a repository and making it available to others at LinkedIn. A task’s procedure becomes a shared artifact that future agents can retrieve.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Small procedures support reuse and progressive discovery
The first authoring principle is that a playbook should be self-contained and focused on one specific task. A playbook for setting up an Airflow DAG should contain guidance for that task. This focus helps the agent choose the right procedure from its description, because the playbook has a clear purpose rather than covering many unrelated jobs.
The second principle is to split a large playbook into smaller playbooks and reference them from the larger one. Shared procedures can then be reused by multiple playbooks. References also let the agent discover context progressively: it reads a smaller procedure when the task requires it, rather than loading every procedure at once. This design depends on following references as needed, but reduces the amount of guidance brought into context up front.
Prakash compares this progressive retrieval to skills. He describes playbooks as a similar concept, with LinkedIn’s system designed to capture organizational context and serve it through MCP with little setup. The mechanism he emphasizes is packaging and retrieving relevant instructions when needed.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Task experience feeds proposed playbook improvements
Repository-backed instructions can still become outdated. LinkedIn encourages agents to identify what they learned at the end of a session, including stale information, discrepancies and missing guidance in the playbooks they used. The agent can then check out the repository, update the relevant playbook and create a pull request proposing the improvement.
Prakash describes a self-improving loop: engineers publish procedures, agents use them, experience exposes problems, and proposed changes feed back into the shared playbooks. The durable improvement lives in the repository rather than only in the agent’s session. Creating a pull request supplies a proposed correction; keeping the corpus fresh also depends on those changes reaching the published playbooks.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
One local server serves central and repository-specific knowledge
The architecture uses a local MCP server installed by default on LinkedIn laptops. Prakash says updates to the server, tools and playbooks reach laptops every hour. This distribution mechanism makes the infrastructure available to new employees and propagates changes without requiring each engineer to maintain a separate installation manually.
Central playbooks contain guidance that applies across multiple repositories. Local playbooks contain guidance specific to one repository and are checked in alongside its code. They are picked up automatically when an agent works in that repository. Teams can therefore maintain specialized procedures locally without changing the central repository, while retaining access to shared procedures.
A single MCP server serves the tools and both kinds of playbooks. Prakash identifies authentication and telemetry as shared concerns this arrangement can handle centrally. Telemetry also gives the team information it can use to improve the ecosystem, although he does not specify the measurements or evaluation methods.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Search, get schema and execute keep the exposed interface small
Prakash reports that exposing more than roughly 30 or 40 tools through MCP degrades context or system performance. LinkedIn instead exposes three meta tools: search, get schema and execute. The large catalog remains available behind this small interface. The reported threshold explains the team’s design choice; it is not established here as a universal limit across agents or workloads.
The agent searches for relevant tools and playbooks using keywords and tags. Preconfigured system instructions explain how to use the interface and search efficiently. Once the agent finds a suitable capability, get schema supplies more detail, and execute invokes the selected tool or playbook. Discovery, inspection and invocation happen in sequence, so the agent retrieves details for selected capabilities rather than carrying the entire catalog’s definitions at once. Prakash says this has allowed the system to scale to thousands of tools and playbooks.
Prakash reports over 8,000 daily users and over 600 playbooks. Adoption extends beyond engineers to product managers, designers and TPMs, who contribute playbooks and use the tools to automate their workflows. These figures describe the system’s reported reach; they do not by themselves measure task correctness or productivity gains.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Reliability and enterprise infrastructure are the closing priorities
Prakash closes by attributing the system’s success to treating quality and reliability as requirements from day one. Before building the MCP server, the team asked how to improve productivity while maintaining those properties as development moved quickly. His stated priority is a system engineers can continue to depend on as it grows.
His second closing lesson is to build the infrastructure agents need to operate within the enterprise. Giving engineers the latest tools and models is insufficient when the surrounding organization does not make its systems usable by agents. He ends with that infrastructure requirement, thanks the audience and invites them to connect on LinkedIn.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Read the complete timestamped transcript
- 0:01
[music]
- 0:12
Hey everyone, good morning. Uh
- 0:16
thanks for being here. Uh I see people
- 0:18
are still coming. Uh but yeah, my name
- 0:22
is uh AJ and uh I am a software engineer
- 0:25
at uh LinkedIn.
- 0:28
Today I'm going to be talking about how
- 0:31
we are doing context engineering to
- 0:32
improve the performance of coding agents
- 0:35
at LinkedIn.
- 0:40
Okay. Uh imagine you are a software
- 0:42
engineer in a big tech company and your
- 0:46
products are being used by millions of
- 0:48
users on a daily basis
- 0:51
and you are happen to be on a team which
- 0:54
owns set of very critical services and
- 0:57
you are on call right and you get an
- 1:01
alert saying that there is an error
- 1:03
spike in one of your services
- 1:06
and uh by the time you're trying to
- 1:08
figure out how to deal with this issue,
- 1:12
you take the link to the alert, give it
- 1:14
to a coding agent like Cloud Code or
- 1:17
GitHub Copilot.
- 1:20
While you're trying to figure out um how
- 1:22
to deal with the issue, uh the coding
- 1:24
agent is working in the background, it
- 1:27
will fetch the instructions on how to
- 1:29
debug such issues in your company and
- 1:32
identifies that based on that
- 1:33
instruction, it identifies that this
- 1:36
alert is happening in uh specific
- 1:38
service. Then it fetches instruction and
- 1:40
context on how to debug that particular
- 1:43
service and it will fetch the based on
- 1:46
those instructions it will take actions
- 1:48
like fetching logs metrics and then it
- 1:52
uses those logs to identify the root
- 1:54
cause of the issue right so it
- 1:56
identifies based on the error logs where
- 1:59
the issue is happening and it doesn't
- 2:02
just find the root cause it also figures
- 2:05
out the steps to mitigate the issue and
- 2:07
once it finds all the det details. It
- 2:09
summarizes and give it to you saying
- 2:11
this is this is the error and this is
- 2:13
the issue and this is the actions that
- 2:15
you need to take to mitigate. And once
- 2:17
you confirm, it also goes ahead and
- 2:20
takes those actions on your behalf to
- 2:22
mitigate the issue.
- 2:25
And it doesn't just stop there. Uh it
- 2:28
updates your incident management system
- 2:30
with all the details, error metrics and
- 2:32
dashboards etc. and also it checks out
- 2:35
the code and creates a PR for you uh to
- 2:38
fix the root cause of the issue. All of
- 2:40
this happens in matter of few minutes
- 2:43
which would have easily taken few hours
- 2:45
if you were to do it manually.
- 2:48
This is not fiction. So this is how
- 2:50
teams at LinkedIn are using coding
- 2:52
agents as effective co-workers with deep
- 2:56
understanding of LinkedIn's internal
- 2:58
systems and code to help the teams be
- 3:01
really productive.
- 3:05
And this is possible because of a system
- 3:07
that we built called as contextual agent
- 3:10
playbooks and tools at LinkedIn. And
- 3:14
today I'm going to talk about why we
- 3:15
built the system, how we built it and
- 3:18
what are our learnings from the success.
- 3:23
To understand why we built the this
- 3:26
system, we have to go back to the early
- 3:29
days of coding agents, right? So just
- 3:31
like any other company even at LinkedIn
- 3:34
we wanted to use the coding agents to be
- 3:37
for our engineers and everyone to be
- 3:39
really productive with the AI.
- 3:42
So we started using started giving this
- 3:44
coding agents to all of the engineers
- 3:47
and the problem was the coding agents
- 3:51
doesn't really or the w coding doesn't
- 3:53
really work in a large enterprise at
- 3:55
link um like LinkedIn.
- 3:59
So the biggest problem is the coding
- 4:01
agent or the LLMs are trained on
- 4:04
open-source repos right. So they don't
- 4:07
have the context of how we our uh mature
- 4:11
code bases at LinkedIn or our internal
- 4:14
frameworks or internal systems.
- 4:18
So what used to happen was the engineers
- 4:20
used to do wipe code or try the agentic
- 4:23
coding but because it the agents lacked
- 4:27
context they used to hallucinate and
- 4:29
like get stuck in between or uh even
- 4:33
more dangerous they used to make up
- 4:35
things which is not correct. So the
- 4:39
engineers had to prompt these agents
- 4:42
manually um to do the right thing which
- 4:45
used to take more time than the manual
- 4:47
coding itself. So a lot of people a lot
- 4:50
of engineers went back to manual coding.
- 4:52
So coding agents was not effective
- 4:56
to understand the problem uh to get more
- 4:59
perspective. So if you look at the
- 5:02
LinkedIn stack, we have over thousand
- 5:05
repos which make up thousands of uh
- 5:07
microservices and apps
- 5:10
and we have a lot of all of these apps
- 5:13
and services are built on lot of
- 5:15
internal frameworks and libraries
- 5:18
and we also have a lot of custombuilt
- 5:21
infra. For example, we have our own
- 5:23
databases. We have our own
- 5:25
experimentation and tracking platform.
- 5:27
We have our own configuration management
- 5:29
system which is purely internal to
- 5:32
LinkedIn and coding agents doesn't have
- 5:34
any idea about them
- 5:37
and engineers go through a week-long
- 5:40
boot camp whenever a new engineer joins.
- 5:43
So uh just to get familiar with these
- 5:45
systems.
- 5:49
So
- 5:51
we looked at this problem and we asked
- 5:54
ourselves the question how can we make
- 5:57
any coding agent like cursor or cloud
- 6:00
code or uh GitHub copilot understand our
- 6:05
LinkedIn's internal system so well that
- 6:08
they can ship the code that our
- 6:10
engineers can trust.
- 6:12
By trust I mean the code should be
- 6:14
correct and also the quality of the code
- 6:17
should be as good as uh it is written by
- 6:20
an actual engineer. So that is the bar
- 6:23
we set out and wanted to figure out how
- 6:26
do we get there.
- 6:30
So in early 2025 uh last year so uh
- 6:34
Anthropic released MCB and it it quickly
- 6:37
became the standard for industry
- 6:40
standard for building tools to the
- 6:42
agents. We leveraged that and pretty
- 6:46
early on we built our own internal MCP
- 6:50
and the first tool that we built was uh
- 6:52
code search.
- 6:55
So we have a pretty sophisticated code
- 6:57
search system at LinkedIn where you um
- 7:00
engineers can go and search for code. It
- 7:02
will ingest all of uh search for any
- 7:04
code across thousands of repos using
- 7:07
keywords and custom filters and rejects
- 7:10
etc. So we made that available to the
- 7:13
coding agents via MCP. This was a really
- 7:16
powerful unlock because now you don't
- 7:19
have to manually figure out how to do
- 7:21
better search the agent. You ask a
- 7:23
question. Hey, how do I set up a
- 7:26
particular thing? And the agent can use
- 7:29
the code search tools to figure out the
- 7:31
right examples of how we do things at
- 7:34
LinkedIn and use that to give you answer
- 7:37
and also uh implement it based on the
- 7:40
its findings. This was really powerful.
- 7:44
So we added more tools. We added docs,
- 7:48
uh, Jiraa, Slack, um, even connected to
- 7:52
all of our data platforms and even
- 7:55
feature flags. So every core tool that
- 7:58
we added to our internal MCP it created
- 8:01
more value by comp it it's almost like a
- 8:04
compounding effect because now a
- 8:07
engineer can bring in the PRDS product
- 8:11
requirement documents and design docs
- 8:13
and also their Jira tasks which has mult
- 8:16
uh different context and use all this to
- 8:19
give to the coding agent to automate
- 8:21
their um or help with their coding.
- 8:27
But there was a problem. So you connect
- 8:30
all these tools but it's not enough
- 8:33
right? So even with a slightly complex
- 8:36
workflow the agents used to not do
- 8:40
really well. The problem for example if
- 8:44
you give a context it is uh with the
- 8:47
tools the agent was able to answer
- 8:49
questions answer basic questions and
- 8:51
find code examples but it cannot do a
- 8:55
like a complete job reliably end to end.
- 8:58
The main problem was to do a specific
- 9:02
job end to end it needs to have a lot of
- 9:06
tribal knowledge right. So all of for
- 9:08
example how to fix a particular error or
- 9:11
how to uh configure how do you debug a
- 9:14
particular um error log right so all of
- 9:17
this knowledge even though you have
- 9:20
access to the tools it is scattered
- 9:22
across lot of different surfaces for
- 9:24
example docs wikis and slack
- 9:27
conversations
- 9:29
um etc and most of the times you may
- 9:32
have experienced the docs and wikis
- 9:34
might be outdated written and there
- 9:36
might be like duplicate get docs, right?
- 9:39
So, the problem is the agents even
- 9:41
though they have access to the tools,
- 9:42
they used to get lost.
- 9:45
The second problem was context overload.
- 9:49
As agents use more and more tools,
- 9:53
their context gets overloaded which
- 9:55
means every tool uh tool output it takes
- 9:58
up space in the context which will
- 10:00
eventually cause the agent to compact
- 10:03
its um while it is working compacts it
- 10:07
its context which causes it to lose some
- 10:10
of the information. Then it has to do
- 10:11
all over again.
- 10:14
And the third problem was even though
- 10:18
even if the agent was able to figure out
- 10:20
all these uh details it can it doesn't
- 10:24
have a way to retain this information it
- 10:26
doesn't have a a durable memory. So
- 10:29
every time a engineer asks the uh agent
- 10:32
to do a certain task they have to start
- 10:34
from scratch.
- 10:38
So how do we solve this problem? So we
- 10:40
give this instructions right away right?
- 10:43
So we built a system, we invented a
- 10:45
system in early 2025 called as uh
- 10:48
playbooks where we not only provide the
- 10:51
tools to the agents via MCP, we also
- 10:55
allow the agents to access these
- 10:58
instructions and prompts via MCP. We
- 11:01
call it playbooks. And playbook
- 11:05
it just appears just like any other
- 11:08
regular tool.
- 11:10
uh and they have uh names and
- 11:12
description on what it does and the
- 11:14
agent can decide to invoke that playbook
- 11:17
just like any other regular tool and
- 11:20
when the uh playbook is invoked the
- 11:24
instructions and the context within that
- 11:26
playbook are returned as the tool output
- 11:29
to the coding agent.
- 11:31
So that way the agents have both tools
- 11:33
as well as instructions on how to use
- 11:36
tools to set up a or uh uh perform a
- 11:40
task. Right? For example, uh if the uh
- 11:44
engineer goes and ask like how do I set
- 11:45
up a airflow DAG uh at LinkedIn? The
- 11:49
agent will first decide okay so I have a
- 11:51
playbook for creating um that specific
- 11:55
task and it will use that first fet uh
- 11:59
uses that playbook to get the
- 12:00
information and then it calls the
- 12:03
necessary uh follows that instructions
- 12:05
and calls the relevant tools to get the
- 12:08
job done. This was really powerful
- 12:13
um mainly because now anyone at LinkedIn
- 12:16
can go ahead and create a set up a
- 12:19
playbook and check it into a repository
- 12:21
and make it available for everyone else
- 12:23
at LinkedIn.
- 12:27
So as people started creating more
- 12:30
playbooks so we wanted so this is um one
- 12:35
of two foundational principles we want
- 12:38
everyone to follow when creating a
- 12:40
playbook. The first one is a playbook
- 12:43
should be self-contained which means it
- 12:46
should do a very specific task only um
- 12:49
for example um if it is for setting up a
- 12:52
airflow DAG it should be about the
- 12:55
instruction and the construct should be
- 12:57
about uh one specific task. This helps
- 13:00
the agents pick the right playbook for
- 13:02
the right task. And the second uh most
- 13:06
important one is to break a big playbook
- 13:09
into multiple smaller playbooks.
- 13:12
So this has um and reference those
- 13:15
smaller playbooks from a bigger
- 13:16
playbook. This is a really powerful
- 13:20
um principle because just like um so it
- 13:24
has two main advantages, right? So the
- 13:26
first one is uh reusability. So if you
- 13:29
have a small self-contained playbooks,
- 13:31
it can be used from multiple uh
- 13:33
reference from multiple playbooks and if
- 13:36
you um the another big advantage is
- 13:39
progressive discovery of um context
- 13:42
which means the agent only when it needs
- 13:44
to read a smaller playbook instead of
- 13:47
reading the entire all of the playbooks
- 13:49
at once it can uh progressively go and
- 13:52
read the playbooks as it wants. So this
- 13:54
is the same concept as skills as well.
- 13:57
So playbooks are very similar to uh
- 13:59
skills but we developed this entire
- 14:01
system around playbooks even before
- 14:04
skills was a thing. And uh playbooks are
- 14:07
a little bit more nuanced because it
- 14:09
helps us um it helps us seamlessly
- 14:13
capture all of the organizational
- 14:15
context and service via MCP without much
- 14:19
of a setup.
- 14:23
And another cool thing about this
- 14:25
playbooks is this self-improving loop.
- 14:29
So u you have uh engineers creating
- 14:32
these playbooks and checking into the
- 14:34
repository. And one of the main problem
- 14:37
with any knowledge base is it gets
- 14:40
outdated. How do you uh the biggest
- 14:42
problem is how do you keep the context
- 14:44
fresh right? So great thing about agents
- 14:47
is they can improvise.
- 14:49
So we have we encourage the agents to
- 14:52
whenever they use a particular playbook
- 14:55
at the end of the session to identify
- 14:58
the learnings. So any outdated
- 15:01
information or any discrepancy or any
- 15:04
missing information and we also
- 15:06
encourage the agents to figure out how
- 15:08
to improve the playbook and use that
- 15:11
context to check it uh to update the
- 15:15
playbooks check out the uh repository
- 15:18
and update the playbooks and create a PR
- 15:21
and that once it gets upload it gets uh
- 15:24
the playbooks gets updated right this
- 15:26
creates a really seamless flywheel of a
- 15:29
self-arning loop.
- 15:34
So what does the architecture of a MCP
- 15:37
server looks like?
- 15:39
So this particular system we have one
- 15:42
local MCP server and it is automatically
- 15:46
installed on all of the LinkedIn laptops
- 15:48
by default. So if you join LinkedIn and
- 15:50
you get a laptop, it is pre-installed
- 15:53
and any updates to the uh MCP server or
- 15:57
the playbooks or the tools, it
- 15:58
automatically gets updated every 1 hour
- 16:01
on all the laptops.
- 16:04
And we have a concept of two local
- 16:07
playbooks and central playbooks which
- 16:09
means so central playbooks are the
- 16:11
playbooks which are crosscutting um in
- 16:15
nature, right? So you have um these
- 16:18
playbooks apply for multiple uh
- 16:20
repositories not just one uh code
- 16:22
repository and then you have local
- 16:24
playbooks where it these are the
- 16:27
playbooks which are very specific to
- 16:29
your code repository and you can just
- 16:31
have them checked in with your repo um
- 16:35
uh with your repo and when only when the
- 16:38
coding agents are working in your repo
- 16:41
those playbooks will be automatically
- 16:42
picked up. So this helps us scale the
- 16:45
local playbooks which are very specific
- 16:47
to repo without having to worry about um
- 16:51
uh changing the uh central repository
- 16:55
and also this is one MCP server which is
- 16:57
serving all of the uh playbooks and
- 17:00
tools. So this man helps us do a lot of
- 17:04
uh central things like seamless
- 17:06
authentication, telemetry and u that we
- 17:10
can use for learning to make the whole
- 17:13
uh ecosystem better.
- 17:16
You may be wondering like how many tools
- 17:18
and playbooks it can support, right? Uh
- 17:20
so this is a common problem with MCP. we
- 17:23
cannot scale it beyond 30 or 40 tools
- 17:27
without degrading the uh context or
- 17:31
degrading the performance of the system.
- 17:34
So what we do is instead of uh surfacing
- 17:38
all of these playbooks and tools through
- 17:40
MCP we replace them with three meta
- 17:43
tools. So the first one is search. The
- 17:47
agent first uses this tool to search for
- 17:50
the relevant tools and playbooks using
- 17:53
keywords and tags. U so we also control
- 17:56
the system instructions. Um so every
- 17:59
coding agent is preconfigured with
- 18:01
system instruction on how to use these
- 18:03
tools and how to use the search really
- 18:05
efficiently. And once it finds the uh
- 18:09
right set of tool or playbook, it can
- 18:11
then get the more details about that
- 18:14
particular tool using get schema and
- 18:16
then execute that tool or uh playbook.
- 18:19
So this has allowed us to scale uh to
- 18:22
thousands of tools in playbook.
- 18:27
Um so this is u the growth chart. So now
- 18:30
we have over 8,000 users daily um using
- 18:35
the system daily. using uh tools and
- 18:38
playbooks. So we have over,300
- 18:41
uh tools and over 600 uh playbooks
- 18:46
and it's not not just engineering right.
- 18:48
So it is uh not just engineers but also
- 18:51
product managers, designers, uh TPMS. So
- 18:54
across different functions they are
- 18:56
using the tools and bringing their
- 18:58
playbooks uh to automate their uh
- 19:01
workflows.
- 19:05
uh so I'll leave you with this takeaway
- 19:07
uh key takeaways that can based on our
- 19:10
learning the first one is the system was
- 19:13
successful because we thought about
- 19:15
quality and reliability uh from day one
- 19:18
right so even uh before creating a MCP
- 19:21
server uh we thought okay the our
- 19:23
fundamental principle should be how do
- 19:26
we ensure not just productivity but how
- 19:28
do we ensure the quality and also
- 19:31
reliability of the system so that it
- 19:33
doesn't degrade um as we move fast.
- 19:37
Uh and the second one was u the build
- 19:40
the right infrastructure for agents. Uh
- 19:42
in a large enterprise like LinkedIn,
- 19:44
it's not enough just enough to give all
- 19:47
of the engineers the all the latest and
- 19:50
greatest tools and models. Uh these are
- 19:52
they are not very effective if you don't
- 19:55
build the right infrastructure for the
- 19:56
agents to operate within your
- 19:58
enterprise.
- 20:01
Um yeah that's my time. Thank you for
- 20:04
attending and feel free to connect with
- 20:06
me on [applause] LinkedIn.