ContextGem is an open-source Python framework for extracting structured data from documents with LLMs, made by Sergii Shcherbak under the shcherbak-ai name.
Whoever wires it into a workflow, for example one built in Activepieces, inherits a young dependency, so the first question is who maintains it.
Read the box below as the whole confirmed record. Four facts carry everything else, each with the maker's own page, and anything not in it is not something we verified.
ContextGem v1.3.0 released: what happened and when
- What it is: a document-extraction framework for LLMs (docs)
- Who made it: Sergii Shcherbak, publishing as shcherbak-ai (repository)
- Release: v1.3.0, dated 2026-10-25 (release page)
- Date checked: 2026-10-27 (release page)
Everything that follows draws on these pages. We haven't run the release ourselves.
You call ContextGem from code. You describe what to pull out of a document, and it sends the work to an LLM you choose. The maker's documentation at contextgem.dev is the authority on features, so check there before relying on a capability.
When extraction fails, the person you ask is one individual, not a vendor support desk. The code and releases live in the shcherbak-ai/contextgem repository, under a single named maintainer. Plan your escalation path accordingly.
We checked the maker's pages on 2026-10-27, two days after the v1.3.0 release. If a later version has shipped since, this record is out of date and the release page overrides it.
This takes minutes, not a project: automate it in Activepieces free.
What makes ContextGem essential for document automation
Someone has to turn invoices, contracts and intake forms into fields, because they arrive as prose and layout. That's why a tool that does this with an LLM matters, and why it matters who owns it when it breaks.

Nine in ten enterprise data items fall into the unstructured category, by IDC's rough count. You can't query, reconcile or route most of what your business holds until someone or something reads it.
Today a person often does that reading, and the person is the process.
That is the pattern ContextGem implements.
Take from it that the output is a fixed shape. A downstream workflow can depend on a field called "total" or "termination date" only if every document type yields the same named columns.

Both of the following are maker's claims, not tested by us. The documentation on long documents says ContextGem has specialized configuration options for lengthy documents, and its tool-calling guide covers function calling through its chat interface.
ContextGem adoption and GitHub star growth
Steady, not surging: buildradar.dev shows GitHub stars at 1,982 on Aug 14. They reached 2,000 on Sep 11 and 2,008 on Oct 10. That's 26 stars in about two months, so the project is growing without a surge.
Expect a small community to search for answers when something fails, and plan on your own team being the first line of support.
What ContextGem v1.3.0 adds from the maker's documentation
Whoever gets paged when a run fails at 2am should know that this list stops where the maker's pages stop. Those pages describe three things in v1.3.0: extraction concepts, optimization for long documents, and support for LLMs that call tools.

Long-document optimization
If a document is too large to pass to a model in one integration, this is the maker's answer. The pages don't publish accuracy or cost comparisons. Treat it as a stated capability, not a measured one.
If the first long contract gives odd results, the owner of the workflow has nothing from the maker to check it against.
LLMs that call tools
Give a model tools and it decides when to use them during an exchange; that is what chat-with-tools support means.
In a workflow, that's the same arrangement as an agent setup: an instructions field, a tools list that starts empty, and an "Add tool" menu to fill it.
In the configuration screen below, that shape appears as a prompt, no tools yet, and a structured output section underneath.
Once a model chooses which tool to call, someone must own each tool's permissions and the failure path when a call returns nothing. That is the consequence for ownership.
ContextGem licence, installation and cost from the maker
There's no vendor invoice for the framework, because the maker describes ContextGem as an open framework you install and run yourself. Your spend comes from whichever LLM provider you connect, and that bill belongs to whoever holds the API key.
You will find no per-document price, hosted service fee or support commitment on the pages we relied on. No support commitment means that when extraction breaks, the maintainer is your own team.

You can follow the rest of this with the builder open. Start free, no card.
How to connect ContextGem to workflows
You can reach ContextGem three ways, in order of simplicity: an HTTP request step, an AI step with a custom provider, or an MCP server.
MCP, the Model Context Protocol, is a standard way for AI assistants and agents to discover and call external tools, and an MCP server is what exposes a capability such as document extraction as one of those tools.
Since you own the fix, choose the route you can debug.
As of 2026-10-27 nothing native to ContextGem has shipped, and we haven't run any of these routes.
Read the table's third column as a warning, since none of it is verified; the table shows what each route demands and where it breaks.
| Route | What it needs | Where it falls short | Tested by us |
|---|---|---|---|
| HTTP request step to a self-hosted service | A small service you write and host around the library | You own hosting, authentication and timeouts | No |
| AI step with custom or OpenAI-compatible provider | A service that imitates that API | Extraction output may not fit a chat-style reply | No |
| MCP server | A server exposing extraction as a tool | Quality varies widely across registries | No |
Prices and plan limits checked against contextgem.shcherbak.ai and contextgem.shcherbak.ai and contextgem.shcherbak.ai on October 27, 2026.
Start with the simplest route, because each shortfall is a failure that will page you.
With the HTTP request route, your team wraps ContextGem in a small web service and the workflow posts documents to it. It's the plainest route, and every failure is visible in logs you control. The cost is that you now run a service.
If your service doesn't answer like an OpenAI-compatible endpoint, meaning one that accepts the same request and reply format as OpenAI's chat API, the custom provider route simply doesn't work. That's extra translation work, and structured extraction rarely fits a chat reply without it.
Of the three, MCP is the least settled. MCP Top List counts 111,173 servers on Glama, 50,446 in the official registry, 22,110 on PulseMCP, 19,516 on mcp.so and 4,987 on Smithery.
By one count the same ecosystem is more than twenty times larger than by another, so no single registry tells you what exists, and listing is no sign of quality. Vet any server as you would a dependency you must maintain.
If you wrap ContextGem in your own service, Activepieces removes the need to pick between the HTTP route and the MCP route.
A integration registered once runs as a step in a flow and as a tool schema on the per-project MCP server, so Claude, ChatGPT, Cursor or an agent you built can call the same extraction action.
The mechanism is in packages/integrations in the open source repo, next to the 746 integrations counted there, and MoneyGram, Moneypenny, Alan and FundingSocieties run Activepieces in production.
ContextGem has no piece of its own as of 2026-10-27, so the service from the HTTP route is what you would register.
What ContextGem changes for cost and speed
Whoever owns the invoice and the pager owns this choice, and ContextGem's cost is whatever the LLM you connect to it charges, with a speed we didn't measure.
The table shows what each option's maker says and where we have nothing, so read its empty cells as gaps in our evidence, not as findings.
| Option | Cost basis | Speed | What the maker states |
|---|---|---|---|
| ContextGem | Token charges from the LLM you choose | Not measured by us | Open framework; you supply the model |
| Plain LLM prompt | Token charges from the model vendor | Not measured by us | Set by each vendor's own pages |
| Hosted document service | The vendor's price list | Not measured by us | Set by each vendor's own pages |
We ran no tasks, so there's no cost-per-document or latency figure here. Get both from a trial on your own documents, and name the person who reads the results.
It's not a service you rent: ContextGem is an open framework for extracting structured data from documents with LLMs. You run it and point it at a model, so the bill and the failure modes sit with you.
Before you depend on it, ask who maintains it, because a small project can change direction or go quiet. The code lives in the shcherbak-ai repository on GitHub, and the maker publishes its own documentation.
You run it and point it at a model, so the bill and the failure modes sit with you.
We checked these facts on 2026-10-27. The documentation then showed version 1.4.1, newer than the v1.3.0 this article covers. Confirm which release you install and read its notes before relying on anything above.
What to watch next after ContextGem v1.3.0
Watch the release notes, the adoption trend, and the owner of your own pipeline, because the version you pinned won't be the version in the docs for long. Name one person who gets paged when extraction fails at 2am on a Tuesday before anything ships.
Take the star trend chart below as a weak adoption signal, not a quality test: it shows whether outside interest in the project is rising, flat or fading, and so whether other people may be debugging the same problems, not whether the extraction is accurate.
With that signal in hand, the checks that decide a production rollout are these:
- The maker's changelog and docs, for breaking changes between releases
- Your automation platform's repository and integration catalog, for any native ContextGem support
- Error handling, including how your workflow reacts to a
ModelRefusalError - The LLM bill, measured on a sample of your real documents
A ModelRefusalError signals that the LLM declined to return an extraction at all, which is different from returning a wrong or empty answer.
The workflow needs a failure path for it, such as a review queue or an alert, because otherwise a refused document looks like a document that was never processed, and nobody finds out.
Read the maker's repository and documentation directly for authorship and install instructions. Confirm the release you install matches the one you tested, since the docs already describe a newer version than v1.3.0.
We checked these facts on 27 October 2026, and none comes from a test of our own. Treat anything newer than that date as unverified.
This week, work through these in order:
- Assign an owner.
- Pin the release.
- Run a small batch of your own documents through it.
- Record how many calls fail, how many are refused, and what the model provider charged.
Those results will tell you more than any star count.
What Activepieces does about this
Activepieces has no ContextGem integration as of 2026-10-27, and we haven't run any of the three routes above. What it offers is a place to put the work you do yourself.
The HTTP request step is built in, so a service you write around ContextGem can be called from a flow today, with retries, branching and a failure path on the step where it breaks.

The same service can then serve agents as well as flows. Activepieces exposes your integrations as tools on a per-project MCP server, so Claude, ChatGPT, Cursor or an agent you built can call the extraction action you registered.
You write the wrapper once, and the flow and the agent both reach it. That removes the choice between the HTTP route and the MCP route for anyone willing to run the wrapper.
The code is open source, and the integrations live in packages/integrations in the repository, where 746 are counted. You can read how a integration is built before you write one for ContextGem, and you can self-host the platform so documents stay inside your own network.
MoneyGram, Moneypenny, Alan and FundingSocieties run Activepieces in production, which says the platform is used at scale. It says nothing about ContextGem, which none of them is shown using.
None of this changes who owns extraction when it fails. The maintainer of the wrapper is still your team, and the ModelRefusalError path, the pinned release and the LLM bill still need an owner.
What the platform gives you is a flow to hang those checks on, such as a review queue for refused documents, so a refusal doesn't look like a document that was never processed.

Related reading
References
Build it
Set this up in minutes.
No code required. Connect your accounts, and Activepieces runs it from there.
Start free Talk to sales


