HotDocs MCP Server for LangChain 14 tools — connect in under 2 minutes
LangChain is the leading Python framework for composable LLM applications. Connect HotDocs through Vinkius and LangChain agents can call every tool natively. combine them with retrievers, memory, and output parsers for sophisticated AI pipelines.
ASK AI ABOUT THIS MCP SERVER
Vinkius supports streamable HTTP and SSE.
import asyncio
from langchain_mcp_adapters.client import MultiServerMCPClient
from langchain_openai import ChatOpenAI
from langgraph.prebuilt import create_react_agent
async def main():
# Your Vinkius token. get it at cloud.vinkius.com
async with MultiServerMCPClient({
"hotdocs": {
"transport": "streamable_http",
"url": "https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp",
}
}) as client:
tools = client.get_tools()
agent = create_react_agent(
ChatOpenAI(model="gpt-4o"),
tools,
)
response = await agent.ainvoke({
"messages": [{
"role": "user",
"content": "Using HotDocs, show me what tools are available.",
}]
})
print(response["messages"][-1].content)
asyncio.run(main())
* Every MCP server runs on Vinkius-managed infrastructure inside AWS - a purpose-built runtime with per-request V8 isolates, Ed25519 signed audit chains, and sub-40ms cold starts optimized for native MCP execution. See our infrastructure
About HotDocs MCP Server
Connect your HotDocs Advance tenancy to any AI agent and take full control of your document automation workflows through natural conversation.
LangChain's ecosystem of 500+ components combines seamlessly with HotDocs through native MCP adapters. Connect 14 tools via Vinkius and use ReAct agents, Plan-and-Execute strategies, or custom agent architectures. with LangSmith tracing giving full visibility into every tool call, latency, and token cost.
What you can do
- Template Discovery — List all template packages and their versions available in your HotDocs tenancy
- Work Item Management — Create, inspect, and manage work items that hold interview data and assembled documents
- Interview Sessions — Initialize interview sessions programmatically for interactive data collection
- Automated Document Assembly — Inject answers via XML and trigger document generation without manual UI interaction
- Document Retrieval — List and download assembled documents (PDFs, Word docs) directly from the agent
- Validation & Auditing — Check unanswered variables, list work items by date range or user, and audit assembly history
The HotDocs MCP Server exposes 14 tools through the Vinkius. Connect it to LangChain in under two minutes — no API keys to rotate, no infrastructure to provision, no vendor lock-in. Your configuration, your data, your control.
How to Connect HotDocs to LangChain via MCP
Follow these steps to integrate the HotDocs MCP Server with LangChain.
Install dependencies
Run pip install langchain langchain-mcp-adapters langgraph langchain-openai
Replace the token
Replace [YOUR_TOKEN_HERE] with your Vinkius token
Run the agent
Save the code and run python agent.py
Explore tools
The agent discovers 14 tools from HotDocs via MCP
Why Use LangChain with the HotDocs MCP Server
LangChain provides unique advantages when paired with HotDocs through the Model Context Protocol.
The largest ecosystem of integrations, chains, and agents. combine HotDocs MCP tools with 500+ LangChain components
Agent architecture supports ReAct, Plan-and-Execute, and custom strategies with full MCP tool access at every step
LangSmith tracing gives you complete visibility into tool calls, latencies, and token usage for production debugging
Memory and conversation persistence let agents maintain context across HotDocs queries for multi-turn workflows
HotDocs + LangChain Use Cases
Practical scenarios where LangChain combined with the HotDocs MCP Server delivers measurable value.
RAG with live data: combine HotDocs tool results with vector store retrievals for answers grounded in both real-time and historical data
Autonomous research agents: LangChain agents query HotDocs, synthesize findings, and generate comprehensive research reports
Multi-tool orchestration: chain HotDocs tools with web scrapers, databases, and calculators in a single agent run
Production monitoring: use LangSmith to trace every HotDocs tool call, measure latency, and optimize your agent's performance
HotDocs MCP Tools for LangChain (14)
These 14 tools become available when you connect HotDocs to LangChain via MCP:
complete_assembly
This processes all collected answers and assembles the final documents based on the template configuration. After calling this, the assembled documents become available for download via list_documents and get_document_content. You must have already created a work item, created a version/session, and provided answers (via interview or update_answers). The workItemId and versionId must match an existing work item and its version. Complete document assembly for a work item version
create_interview_session
This endpoint prepares the system to collect answers for the template variables. The response contains interview data needed to render the HotDocs interview UI. Use this before displaying the interview to the user or before assembling documents. The versionId should be unique for each interview session (e.g., v1, v2, or a UUID). Create a new interview session for a work item
create_work_item
A work item is associated with a specific template package and holds answers provided during interviews. You must provide a unique workItemId (alphanumeric identifier you choose) and optionally a templatePackageId. The workItemId becomes the reference for all subsequent operations (interview, assembly, download). IMPORTANT: workItemId must be unique and URL-safe (letters, numbers, hyphens only). Create a new work item in HotDocs Advance
get_auth_token
This is primarily a utility function for debugging authentication issues. The token is used internally by all other tools automatically. If other tools fail with auth errors, verify your credentials are correct. Get a fresh HotDocs API access token
get_document_content
Use this to download the final generated document (PDF, Word, etc.) after assembly is complete. You need the workItemId and the documentId (obtained from list_documents). The response includes the document content and a download URL for direct access. Download/get content of an assembled document
get_template_package
Use the template package ID obtained from list_template_packages. This helps understand the template structure before creating work items. Get details of a specific template package
get_unanswered_variables
This shows which template variables were not provided answers during the interview process. Useful for validating interview completeness before or after document assembly. Requires the workItemId and documentId (from list_documents). The response includes the list of unanswered variables and assembly results. Get unanswered variables from an assembled document
get_work_item
Use this to inspect a work item before or after conducting interviews or assembling documents. The workItemId is the unique identifier you assigned when creating the work item. Get details of a specific work item
list_documents
After completing assembly, this shows all generated documents with their IDs, names, and metadata. Use the document IDs returned here to download individual documents via get_document_content. Each document entry includes filename, creation date, and assembly results information. List all assembled documents for a work item
list_template_packages
Template packages define the structure of documents that can be assembled. Each package contains interview questions and document output configurations. Use this to discover what templates are available for document assembly. The response includes package IDs which are required for creating work items. List all available template packages in HotDocs Advance
list_template_versions
Each template can have multiple versions over time. This shows version history and helps identify which version is currently live/active. Use the package_id from list_template_packages to query versions. List all versions of a template package
list_work_items
You can filter by user ID and/or date range to find specific work items. Leave all parameters empty to list all work items. This is useful for auditing, tracking progress, or finding existing work items to continue working on. Date format should be ISO 8601 (e.g., 2024-01-15 or 2024-01-15T10:30:00). List work items with optional filters
list_work_items_by_date
This is optimized for date-based filtering and auditing. Both fromDate and toDate are required for this tool. Use ISO 8601 date format (e.g., 2024-01-01 or 2024-01-01T00:00:00 for datetime). This is useful for generating reports on document assembly activity over time periods. List work items filtered by a specific date range
update_answers
The answer_xml parameter must contain valid HotDocs answer XML format that matches the template variables. This is useful for automated/batch document assembly where you already have the data. You can call this multiple times to incrementally add answers. Answer XML format example: <AnswerSet><A v="VariableName"><V>Answer Value</V></A></AnswerSet> Update answers for a work item using XML answer format
Example Prompts for HotDocs in LangChain
Ready-to-use prompts you can give your LangChain agent to start working with HotDocs immediately.
"List all available template packages in my HotDocs tenancy."
"Create a new work item 'contract-2024-001' using the employment contract template and assemble a document with these details: employee name is John Smith, position is Software Engineer, start date is March 1st 2024, salary is $95,000."
"Show me all work items created in the last 30 days and check if there are any unanswered variables in the documents."
Troubleshooting HotDocs MCP Server with LangChain
Common issues when connecting HotDocs to LangChain through the Vinkius, and how to resolve them.
MultiServerMCPClient not found
pip install langchain-mcp-adaptersHotDocs + LangChain FAQ
Common questions about integrating HotDocs MCP Server with LangChain.
How does LangChain connect to MCP servers?
langchain-mcp-adapters to create an MCP client. LangChain discovers all tools and wraps them as native LangChain tools compatible with any agent type.Which LangChain agent types work with MCP?
Can I trace MCP tool calls in LangSmith?
Connect HotDocs with your favorite client
Step-by-step setup guides for every MCP-compatible client and framework:
Anthropic's native desktop app for Claude with built-in MCP support.
AI-first code editor with integrated LLM-powered coding assistance.
GitHub Copilot in VS Code with Agent mode and MCP support.
Purpose-built IDE for agentic AI coding workflows.
Autonomous AI coding agent that runs inside VS Code.
Anthropic's agentic CLI for terminal-first development.
Python SDK for building production-grade OpenAI agent workflows.
Google's framework for building production AI agents.
Type-safe agent development for Python with first-class MCP support.
TypeScript toolkit for building AI-powered web applications.
TypeScript-native agent framework for modern web stacks.
Python framework for orchestrating collaborative AI agent crews.
Leading Python framework for composable LLM applications.
Data-aware AI agent framework for structured and unstructured sources.
Microsoft's framework for multi-agent collaborative conversations.
Connect HotDocs to LangChain
Get your token, paste the configuration, and start using 14 tools in under 2 minutes. No API key management needed.
