Skip to main content

langchain-instanode

LangChain tools for instanode.dev — let your LangChain agents provision ephemeral Postgres databases and webhook receivers mid-task with a single tool call. No Docker, no account needed for the free tier.

pip install langchain-instanode

Why

Most LangChain agents that need storage hit a friction wall: they either burn hundreds of tokens generating boilerplate Docker/setup code, or they silently give up and go stateless. langchain-instanode exposes four tools that let an agent skip all of that and just get a database.

  • provision_postgres → a postgres:// DSN (pgvector pre-installed for RAG).
  • provision_webhook → an HTTPS receiver URL (good for GitHub/Stripe/Slack flows).
  • list_resources → enumerate what the agent has already provisioned.

MongoDB, Redis/cache, NATS queue, and heartbeat-monitor tools are on the roadmap, gated on the corresponding backend endpoints landing. They live on the feature/full-api branch.

Free tier: anonymous, 24h TTL, 10 MB / 2 connections. Paid tier (set INSTANODE_API_KEY): permanent, 500 MB / 5 connections, higher provisioning limits.

Usage

from langchain_instanode import get_instanode_tools
from langchain_anthropic import ChatAnthropic
from langchain.agents import AgentExecutor, create_tool_calling_agent
from langchain_core.prompts import ChatPromptTemplate

llm = ChatAnthropic(model="claude-sonnet-4-6")
tools = get_instanode_tools()

prompt = ChatPromptTemplate.from_messages([
    ("system",
     "You are a helpful coding assistant. When you need a database or webhook, "
     "call the instanode tools instead of writing setup boilerplate."),
    ("placeholder", "{chat_history}"),
    ("human", "{input}"),
    ("placeholder", "{agent_scratchpad}"),
])

agent = create_tool_calling_agent(llm, tools, prompt)
executor = AgentExecutor(agent=agent, tools=tools, verbose=True)

executor.invoke({"input":
    "Stand up a Postgres DB, create a `notes` table with (id, body), and "
    "insert one row."
})

The agent will call provision_postgres, get back a DSN, run its SQL against the live database, and report the result — all inside one turn.

Scoped tool set

If you want the agent to only have webhook powers (not database provisioning):

tools = get_instanode_tools(include=["provision_webhook"])

Using a paid-tier token

tools = get_instanode_tools(api_key="sk_...")

Or set INSTANODE_API_KEY in the environment.

Dependency graph

langchain-instanode
  ├── instanode        (the HTTP SDK — pure stdlib, no deps)
  ├── langchain-core   (BaseTool + pydantic schemas)
  └── pydantic>=2      (args_schema for structured tool calls)

Related

License

MIT — see LICENSE.

Metadata

Release files for langchain-instanode 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for langchain-instanode 0.2.0
File Size Uploaded Provenance Actions
langchain_instanode-0.2.0.tar.gz 7.5 kB Without provenance Details for langchain_instanode-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for langchain-instanode 0.2.0
File Interpreter ABI Platform Actions
langchain_instanode-0.2.0-py3-none-any.whl Python 3 none any Details for langchain_instanode-0.2.0-py3-none-any.whl

Total release size: 14.7 kB

Release files / langchain_instanode-0.2.0.tar.gz

Download URL langchain_instanode-0.2.0.tar.gz
Size 7.5 kB
Tags Source
SHA-256 checksum
How to use checksums
59f944a867416e350f903864871ebbc7ec09f726af6edcd173b015c8a67fd680
BLAKE2b-256 checksum
How to use checksums
2a7b3bc8ca49abc7c24b9ddccd584105a8520f81af18df5b6f164083c75a8c59
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / langchain_instanode-0.2.0-py3-none-any.whl

Download URL langchain_instanode-0.2.0-py3-none-any.whl
Size 7.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1add349df6f14d714af4c6853cab8a83ef98190f3296b15fb9fc334fc384c6dd
BLAKE2b-256 checksum
How to use checksums
dc9246cbd606a4c208f23830c4af32cf90f4b905f08c59c9ec07122a966d2c14
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for langchain-instanode 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page