Atlas / MCP servers / langchain-ai / Langchainjs

LangchainjsBLOCK

mcp/langchain-ai/langchainjs

The agent engineering platform

Verdict
BLOCK
Grade
F
Trust score
39 /100
Exposed tools
200 254r · 28w · 3d
Transport
sse · stdio · streamable-http
License
MIT
Stars
18,258
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

The agent engineering platform.

[](https://opensource.org/licenses/MIT) [](https://x.com/langchain_js)

LangChain is a framework for building LLM-powered applications. It helps you chain together interoperable components and third-party integrations to simplify AI application development — all while future-proofing decisions as the underlying technology evolves.

[!TIP] Just getting started? Check out [Deep Agents](http://docs.langchain.com/oss/javascript/deepagents/) — a higher-level package built on LangChain for agents that have built-in capabilities for common usage patterns such as planning, subagents, file system usage, and more.

Documentation: To learn more about LangChain, check out the docs.

If you're looking for more advanced customization or agent orchestration, check out LangGraph.js, our framework for building agents and controllable workflows.

For an equivalent Python library, check out LangChain.

To help you ship LangChain apps to production faster, check out LangSmith, a unified developer platform for building, testing, and monitoring LLM applications.

⚡️ Quick Install

You can use npm, pnpm, or ya

Read from source at commit 6808c2632af1OBSERVED · 2026-10-12
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code
claude mcp add langchainjs --env ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY} --env AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID} --env AWS_BEARER_TOKEN_BEDROCK=${AWS_BEARER_TOKEN_BEDROCK} --env AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY} -- npx -y langchainjs
claude-desktop
{
  "mcpServers": {
    "langchainjs": {
      "command": "npx",
      "args": [
        "-y",
        "langchainjs"
      ],
      "env": {
        "ANTHROPIC_API_KEY": "${ANTHROPIC_API_KEY}",
        "AWS_ACCESS_KEY_ID": "${AWS_ACCESS_KEY_ID}",
        "AWS_BEARER_TOKEN_BEDROCK": "${AWS_BEARER_TOKEN_BEDROCK}",
        "AWS_SECRET_ACCESS_KEY": "${AWS_SECRET_ACCESS_KEY}"
      }
    }
  }
}
03

Exposed tools (200)

254 read · 28 write · 3 destructive. Blast radius: 3 tools can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.

ToolRiskDescription
GenerateUsernamereadGenerate a username based on user characteristics
GetPopulationreadGet the current population in a given location
GetWeatherreadGet the current weather in a given location
GoogleSearchreadSearch for online trends, news, current events, real-time information, or research topics.
WeatherreadGet the weather for a given location
abortable_toolreadA tool that can be aborted
accountread
account_inforeadGet account information for the current user
addwrite
add_historywriteAdd an entry to history
add_numberswriteAdd two numbers together
add_taskwriteAdd a task to the list
add_todowriteAdd an item to the thread TODO list
admin_actionreadAn admin-only action
alpha1readAlpha 1
analyzereadAnalyze text
approveread
askread
ask_questionreadAsk user a question and return directly
async_transfer_to_bobwriteTransfer to Bob
audio_toolread
bedrock-toolreadA Bedrock tool
beta1readBeta 1
beta2readBeta 2
book_flightreadBook commercial flights between cities
calculatereadCalculate the result of an operation
calculate_powerreadCalculate base raised to the power of exponent
calculate_pricereadCalculate pricing with discounts for product quotes
calculate_sumreadAnother dynamically registered tool for calculations
calculatorreadPerform simple calculations
call_georeadAsk the geo sub-agent
call_lareadAsk the LA weather sub-agent
call_nycreadAsk the NYC weather sub-agent
call_sfreadAsk the SF weather sub-agent
call_weatherreadAsk the weather sub-agent
capital_catalogreadGet the capital of a country
check_accountreadCheck account information or perform account actions
check_envread
check_headersread
check_inventoryreadCheck current inventory levels for a product
check_refund_policyreadGet current refund policy information
check_system_statusreadCheck the status of system services
classifyreadClassify text into categories
commandToolreadA tool that returns a Command object
command_toolreadA tool that can return commands
complex_toolreadA tool with complex schema
config_capture_toolreadCaptures the config for testing
configurereadConfigure something
confirmread
crash_toolreadThis tool will crash Gemini SDK
createEventwriteCreate calendar event
create_calendar_eventwriteCreate a calendar event. Requires exact ISO datetime format.
create_documentwriteCreate a structured document
create_eventwriteCreate calendar event
create_orderwriteCreate an order
create_taskwriteCreate a new project task and update the project state
create_userwriteCreate a user
current_weather_toolreadGet the current weather for a given location.
custom_crawlreadCustom description
custom_extractreadCustom description
custom_get_researchreadCustom description
custom_mapreadCustom description
custom_researchreadCustom description
custom_searchreadCustom description
custom_toolreadA custom tool
db_querywriteRun a read-only SQL query against the analytics database.
deferred_toolreadA tool deferred at construction time
delegate_to_subagentreadDelegate analysis/planning to a sub-agent with access to the full thread messages
delete_filedestructiveDelete a file at the supplied path.
delete_shapedestructiveDelete a shape by its name
directorreadThe director of the movie
disconnectread
divideread
do_mathreadEvaluate a math expression
draft_emailreadDrafts an email
dummyreadA dummy tool
dummy_toolreadA dummy tool for testing
dupreadGamma dup 1
dynamic_toolreadA dynamically registered tool
echoread
emailUserreadEmail a user
error_toolreadA tool that throws an error
escalate_to_humanreadEscalate the conversation to a human agent
expensive_operationreadAn expensive operation
extract-1readTool for extracting structured output from the model
extract-2readSecond extract tool
extractorreadExtracts fields from the input.
failing_toolreadA tool that always fails
fakereadfake
fake_browser_toolreaduseful for when you need to find something on the web or summarize a webpage.
faketesttoolreadA fake test tool
fetchUserreadFetch a user
flaky_toolreadA flaky tool that fails twice
fractionread
generate_random_jokereadGenerate a random joke.
genrereadThe genre of the movie
getEmployeereadGet the employee role by name
getEmployeeDepartmentreadGet the employee department by name
getNewsreadGet the latest news on a topic
getWeatherreadGet the current weather for a location
get_account_inforeadGet the authenticated user
get_available_time_slotsreadCheck calendar availability for given attendees on a specific date.
get_current_timereadGet the current time in a given location
get_current_weatherreadGet the current weather in a given location
get_customerreadLook up a customer by ID.
get_detail_by_namereadGet details about a shape by its name
get_ipreadGet server IP address
get_nullish_weatherreadGet the weather of a specific location and return the temperature in Celsius.
get_outputreadGet output for user
get_pagereadGet a specific Notion page by ID.
get_person_detailsreadGet details about a person
get_populationreadGet the population of a city
get_private_datareadGet private data
get_procedural_memoryreadGet user
get_public_datareadGet public data
get_screenshotreadGet a screenshot of the current screen.
get_stock_pricereadGet the current stock price for a given symbol
get_threadreadGet a specific Slack thread.
get_timereadGet the current time in a timezone.
get_user_inforeadLook up user info.
get_user_purchasesreadGet the authenticated user
get_video_captionsreadGet captions for a video.
get_weatherreadGet current weather information for a location
get_weather_antreadGet the weather of a specific location.
get_weather_lcreadGet the weather of a specific location.
get_weather_oaireadGet the weather of a specific location.
github_create_issuewriteCreate an issue in a GitHub repository
gitlab_create_issuewriteCreate an issue in a GitLab project
greetreadGreet someone
greetUserreadGreet a user
greet_toolreadGreets a person
http_400_toolreadTool that raises 400 error
http_500_toolreadTool that raises 500 error
image_toolread
information_extractionreadExtracts the relevant information from the passage.
inner_interruptreadInner tool that interrupts
inspectread
interrupt_toolreadTool that interrupts
invalid_composition_toolreadThis tool has an unsupported root schema composition.
invalid_headerread
invalid_toolreadUses unsupported root composition.
inventory_managementreadDatabase schema and business logic for inventory tracking including products, warehouses, and stock levels.
isReleasedreadWhether the movie has been released
jokereadA joke
jsonSchemaToolreadA tool with JSON schema
knowledge_retrievalreadRetrieve relevant information from long-term memory based on user query and preferences
langchain-1readFirst LangChain tool
langchain-2readSecond LangChain tool
legacy_resultread
lengthreadThe length of the movie in minutes
list_filesreadList the available files in the project.
list_itemsreadList available items
load_skillreadLoad the full content of a skill into the agent
local_weatherreadGet current weather and short-term forecast for a city
lookup_order_statuswriteLook up the current delivery status of a customer order by ID
lookup_visa_requirementsreadCheck visa requirements and documentation by destination country
magic_functionreadApplies a magic function to an input.
manage_emailwriteSend emails using natural language. Use this when the user wants to send notifications, reminders, or any email communication. Handles recipient extraction, subject generation, and email composition. Input: Natural language email request (e.g.,
mcpLikeToolreadTool similar to MCP tools
metadata_capture_toolreadCaptures the metadata for testing
middleware_toolreadTool from middleware
minusreadSubtracts two numbers
modern_echoread
multiplyread
mySpecificToolreadA tool with a specific name
my_toolreadA custom tool
name_generatorreadGenerates a random name
network_toolreadTool that raises NetworkError
normalToolreadA normal tool that returns a string
normal_toolreadA normal tool without returnDirect
ok_toolreada tool
open-ai-product-endpointreadOpen AI Product Endpoint. Query for products.
openai-1readFirst OpenAI tool
openai-2readSecond OpenAI tool
outputFormatterreadOutput formatter. Should always be used to format your response to the user
output_formatterreadShould always be used to properly format output
parameterlessreadA tool that does nothing
personreadA person
pet_info_retrieverreadGet information about pets.
pollJobreadCheck the status of a long-running job. Returns { status:
predictNextUserMessagereadPredicts the next user message, along with insights.
predictionViolationsreadGenerates violations, errors and differences between the predicted user response, and the actual response.
preference_learningreadLearn and store user preferences or context in long-term memory
process_paymentreadProcess a payment
progressread
project_overviewreadGet a comprehensive overview of the current project state
provide_solutionreadProvide a solution to the customer
querywriteuse this tool to generate and execute a query from a question using the index.
query_datareadQuery tool that returns nested response
random_tool_callreadA tool that returns a random result
ratingreadThe rating of the movie (1-10)
rawread
read_document_pagesreadRead pages of a document.
read_filereadRead a file by exact name (see list_files for options).
recommend_productsreadProvide personalized product recommendations based on stored customer preferences
record_issue_typereadRecord the type of issue and transition to resolution specialist.
record_market_insightreadRecord market insights and trends for future reference and pattern analysis
record_warranty_statusreadRecord the customer
regularToolreadA regular tool
remove_tododestructiveRemove an item from the thread TODO list
04

Trust audit

BLOCKgrade F · trust 39/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeFAIL
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfaceWARN
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (9 observation(s))
Network
declared (3 observation(s))
Shell
declared (6 observation(s))
Dependencies
not all pinned
Secrets in source
found

Findings (25)

CRITICALHard-coded secrets · secret.private_key · CWE-798, CWE-321
libs/providers/langchain-google/src/clients/index.ts:141
*     private_key: "-----BEGIN PRIVATE KEY-----\n...",
CRITICALHard-coded secrets · secret.private_key · CWE-798, CWE-321
libs/providers/langchain-google/src/clients/node.ts:112
*     private_key: "-----BEGIN PRIVATE KEY-----\n...",
HIGHCode injection · code.deserialize · CWE-78, CWE-94, CWE-95
libs/langchain-classic/src/util/openapi.ts:240
document = yaml.load(rawString);
Why it matters. deserialises untrusted bytes into live objects
Fix. use json or yaml.safe_load
HIGHNetwork egress · net.metadata_ip · CWE-200, CWE-319
libs/langchain-core/src/utils/ssrf.ts:17
"169.254.169.254",
Why it matters. cloud metadata endpoint: the classic SSRF credential grab
HIGHNetwork egress · net.metadata_ip · CWE-200, CWE-319
libs/langchain-core/src/utils/ssrf.ts:24
"metadata.google.internal",
Why it matters. cloud metadata endpoint: the classic SSRF credential grab
MEDIUMInformation disclosure · disclose.log_secret · CWE-209, CWE-532
environment_tests/test-exports-vercel/src/pages/index.tsx:24
console.log("handleLLMNewToken", token),
MEDIUMHard-coded secrets · secret.generic · CWE-798, CWE-321
libs/langchain-core/src/runnables/tests/config.test.ts:78
api_key: "should-not-propagate",
MEDIUMHard-coded secrets · secret.generic · CWE-798, CWE-321
libs/langchain-core/src/runnables/tests/config.test.ts:105
api_key: "should-not-propagate",
MEDIUMHard-coded secrets · secret.generic · CWE-798, CWE-321
libs/langchain-core/src/runnables/tests/runnable_stream_events_v2.test.ts:102
api_key: "should-not-propagate",
MEDIUMHard-coded secrets · secret.generic · CWE-798, CWE-321
libs/providers/langchain-typesafe/src/tests/classifier.test.ts:523
apiKey: "sk-SUPER-SECRET-12345",
MEDIUMFilesystem / path · mcp.destructive_tools · CWE-22, CWE-59
delete_file, delete_shape, remove_todo
Why it matters. 3 tool(s) can delete or overwrite
Fix. prefer a read-only mode or scoped tokens; the page states the blast radius
LOWInventory / provenance · inv.binary · CWE-1104
libs/providers/langchain-google-genai/src/tests/data/gettysburg10.wav
gettysburg10.wav
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
LOWInventory / provenance · inv.binary · CWE-1104
libs/providers/langchain-google/src/chat_models/tests/data/gettysburg10.wav
gettysburg10.wav
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
LOWInventory / provenance · inv.hidden_file · CWE-1104
.oxfmtrc.jsonc
.oxfmtrc.jsonc
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
.oxlintrc.jsonc
.oxlintrc.jsonc
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
.pnpmrc
.pnpmrc
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
libs/create-langchain-integration/template/.release-it.json
.release-it.json
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
libs/langchain/src/agents/tests/returnDirectMiddleware.int.test.ts:64
const result = eval(input.expression);
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
LOWCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
libs/providers/langchain-google/src/chat_models/tests/index.int.test.ts:372
exec(`afplay "${filePath}"`);
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
LOWCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
libs/providers/langchain-google/src/chat_models/tests/index.int.test.ts:374
exec(`open "${filePath}"`);
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
LOWInformation disclosure · disclose.log_secret · CWE-209, CWE-532
examples/src/langchain-classic/chains/summarization_separate_output_llm.ts:17
console.log("token", token);
LOWInformation disclosure · disclose.log_secret · CWE-209, CWE-532
examples/src/langchain-classic/models/chat/chat_streaming.ts:14
console.log({ token });
LOWInformation disclosure · disclose.log_secret · CWE-209, CWE-532
examples/src/langchain-classic/models/llm/llm_streaming.ts:14
console.log({ token });
LOWInformation disclosure · disclose.log_secret · CWE-209, CWE-532
libs/providers/langchain-cloudflare/src/tests/llms.int.test.ts:31
// console.log(token);
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
dependency_range_tests/scripts/create-mock-tsconfigs.sh:51
package_extends_path="../../../internal/tsconfig/base.json"

Gates applied: critical_finding, no_behavioural_pass.

Audited 2026-10-12 · audit v0.4.1 · source sha 6808c2632af1full audit observations/trust-audit/mcp-server/langchain-ai__langchainjs.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-126808c2632af1BLOCKF39first audit
06

Questions

What is the @langchain/mcp-adapters MCP server?

The agent engineering platform

What tools does @langchain/mcp-adapters expose?

200 in total: 254 read-only, 28 that write, and 3 that can delete or overwrite (delete_file, delete_shape, remove_todo). Every one is listed on this page with its risk.

Is @langchain/mcp-adapters safe to connect to an agent?

No — not without reading the findings first. The audit graded it F (39/100) and found 5 critical or high issues in the source. Each one is listed on this page with the file and line it is on. Separately from the audit: 3 of its tools can destroy data, so scope the token you give it to what you actually need.

What credentials does @langchain/mcp-adapters need?

It reads ANTHROPIC_API_KEY, AWS_ACCESS_KEY_ID, AWS_BEARER_TOKEN_BEDROCK, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN, AZURE_OPENAI_API_KEY, BEDROCK_AWS_ACCESS_KEY_ID, BEDROCK_AWS_SECRET_ACCESS_KEY, BEDROCK_AWS_SESSION_TOKEN, CLOUDFLARE_API_TOKEN, COHERE_API_KEY and DEEPSEEK_API_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does @langchain/mcp-adapters run?

It speaks sse, stdio and streamable-http, so it runs as a local process your client starts. It is published on npm as langchainjs.

How current is this page?

The grade is for one exact copy of the source (6808c2632af1), read on 2026-10-12. The repository is watched and re-audited when it changes.

Advertisement