Command Palette

Search for a command to run...

UnylyUnyly
Browse all

LangExtract Web

FreeNot checked

Web application wrapping Google's LangExtract library for structured information extraction with web UI, REST API, and MCP server interfaces.

GitHubEmbed

About

Web application wrapping Google's LangExtract library for structured information extraction with web UI, REST API, and MCP server interfaces.

README

English | 简体中文 | 繁體中文 | 日本語

LangExtract Logo

LangExtract Web

Docker License Python

🔍 Extract structured information from text using LLMs — A web UI + API + MCP wrapper for Google's LangExtract library.

UI Screenshot

✨ Features

  • 🎯 Precise Source Grounding — Every extraction maps back to exact text positions
  • 📚 Few-shot Learning — Define extraction tasks with just a few examples, no fine-tuning needed
  • 📄 Long Document Optimization — Chunking + multi-pass extraction for high recall
  • 🌐 Web UI — Modern, responsive interface with dark mode and i18n support
  • 🔌 REST API — Full Swagger documentation at /docs
  • 🤖 MCP Support — Model Context Protocol for AI assistant integration
  • 🔧 LiteLLM Compatible — Use any LLM provider (Gemini, OpenAI, Claude, Ollama, etc.)
  • 📁 File Upload — Drag & drop files or fetch from URL

🚀 Quick Start

Docker (Recommended)

docker run -d -p 8600:8600 \
  -e LANGEXTRACT_API_KEY=your-gemini-api-key \
  neosun/langextract:latest

Open http://localhost:8600

Docker Compose

services:
  langextract:
    image: neosun/langextract:latest
    ports:
      - "8600:8600"
    environment:
      - LANGEXTRACT_API_KEY=${LANGEXTRACT_API_KEY}
      - OPENAI_API_KEY=${OPENAI_API_KEY}
      - OLLAMA_HOST=http://host.docker.internal:11434
    volumes:
      - /tmp/langextract:/tmp/langextract
    extra_hosts:
      - "host.docker.internal:host-gateway"
docker compose up -d

📦 Installation

From Source

git clone https://github.com/neosun100/langextract-web.git
cd langextract-web

# Install dependencies
pip install -e .
pip install flask flask-cors flasgger gunicorn

# Run
python app.py

Environment Variables

Variable Description Required
LANGEXTRACT_API_KEY Gemini API Key Yes (for Gemini)
OPENAI_API_KEY OpenAI API Key For OpenAI models
OLLAMA_HOST Ollama server URL For local models
PORT Server port (default: 8600) No

🎮 Usage

Web UI

  1. Open http://localhost:8600
  2. Enter text or drag & drop a file / paste URL
  3. Define extraction prompt and few-shot examples
  4. Select model and configure parameters
  5. Click "Extract" and view results with visualization

REST API

# Health check
curl http://localhost:8600/health

# Extract
curl -X POST http://localhost:8600/api/extract \
  -H "Content-Type: application/json" \
  -d '{
    "text": "Lady Juliet gazed at the stars, her heart aching for Romeo.",
    "prompt": "Extract characters and emotions",
    "examples": [{
      "text": "ROMEO spoke softly",
      "extractions": [{"extraction_class": "character", "extraction_text": "ROMEO"}]
    }],
    "model_id": "gemini-2.5-flash"
  }'

Full API documentation: http://localhost:8600/docs

MCP Integration

{
  "mcpServers": {
    "langextract": {
      "command": "docker",
      "args": ["exec", "-i", "langextract", "python", "mcp_server.py"]
    }
  }
}

⚙️ Configuration

Extraction Parameters

Parameter Default Description
max_char_buffer 1000 Characters per inference chunk
extraction_passes 1 Number of extraction rounds (higher = better recall)
max_workers 10 Parallel workers for speed
batch_length 10 Chunks per batch
temperature 0 Sampling temperature (0 = deterministic)
context_window_chars - Cross-chunk context for coreference

Supported Models

Provider Models
Google gemini-2.5-flash ⭐, gemini-2.5-pro
OpenAI gpt-4o, gpt-4o-mini
Anthropic claude-3-5-sonnet-20241022
Ollama gemma2:2b, llama3.2:3b, etc.
LiteLLM Any provider/model format

🏗️ Tech Stack

  • Backend: Flask, Gunicorn
  • Core: LangExtract by Google
  • LLM: Google Gemini, OpenAI, Anthropic, Ollama
  • Container: Docker

📝 Changelog

v1.2.0

  • ✨ File drag & drop upload
  • ✨ URL content fetching
  • ✨ Custom model support (LiteLLM)
  • ✨ Full parameter exposure in UI
  • ✨ Project introduction section

v1.0.0

  • 🎉 Initial release with Web UI + API + MCP

🤝 Contributing

Contributions welcome! Please read the Contributing Guide.

📄 License

Apache 2.0 - See LICENSE

Based on LangExtract by Google.


⭐ Star History

Star History Chart

📱 Follow Us

WeChat

from github.com/neosun100/langextract-web

Install LangExtract Web in Claude Desktop, Claude Code & Cursor

Recommended · one command, every IDE
unyly install langextract-web

Installs into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.

First time? Get the CLI: curl -fsSL https://unyly.org/install | sh

Or configure manually

Run in your terminal:

claude mcp add langextract-web -- uvx langextract

Step-by-step: how to install LangExtract Web

FAQ

Is LangExtract Web MCP free?

Yes, LangExtract Web MCP is free — one-click install via Unyly at no cost.

Does LangExtract Web need an API key?

No, LangExtract Web runs without API keys or environment variables.

Is LangExtract Web hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install LangExtract Web in Claude Desktop, Claude Code or Cursor?

Open LangExtract Web on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

LibreOffice Tools

Enables AI agents to read, write, and edit Office documents via LibreOffice with token-efficient design. Supports multiple formats including DOCX, XLSX, PPTX, a

passerbyflutterby passerbyflutter

dannote/figma-use

Full Figma control: create shapes, text, components, set styles, auto-layout, variables, export. 80+ tools.

dannoteby dannote

Logo.dev

Search and retrieve company logos by brand or domain. Customize size, format, and theme to match your design needs. Accelerate design, prototyping, and content

NOVA-3951by NOVA-3951

Design Inspiration Server

Searches top design platforms like Dribbble and Behance to provide UI inspiration, color palettes, and layout patterns via the Serper API. It allows users to re

YonasValentinby YonasValentin

PIX4Dmatic

Enables GUI automation for controlling PIX4Dmatic on Windows through MCP. Supports launching, focusing, capturing screenshots, sending hotkeys, clicking UI elem

jangjo123by jangjo123

Figma

Extract design specs and assets

Figmaby Figma

mcp-dockmaster

An Open-Sourced UI to install and manage MCP servers for Windows, Linux and macOS.

by Community

ariekogan/ateam-mcp

Build, validate, and deploy multi-agent AI solutions on the ADAS platform. Design skills with tools, manage solution lifecycle, and connect from any AI environm

ariekoganby ariekogan

thinkchainai/mcpbundles

MCP Bundles: Create custom bundles of tools and connect providers with OAuth or API keys. Use one MCP server across thousands of integrations, with programmatic

thinkchainaiby thinkchainai

arikusi/nakkas

MCP server that turns AI into an SVG artist. One rendering engine with JSON config, AI controls all design parameters. CSS @keyframes + SMIL animations, 16+ ele

arikusiby arikusi

Compare LangExtract Web with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All design MCPs