Financial Evidence for LangChain
Native, read-only LangChain tools for public financial research from Seiche (funding and money markets), LiquiLens (covered-bank diagnostics), and Undertow (market liquidity). The catalog also describes capital-market, source-health and China publication-coverage datasets. Coverage is finite and some fields are unavailable or restricted.
This standalone package calls the free hosted Financial Evidence API at
agents.seiche.info. It does not
depend on the separate financial-evidence distribution. No data API key or
model account is required to invoke these tools. Model calls, if you add them,
use your own provider and may incur charges.
Install
Python 3.10+ and langchain-core 1.6.6 through 1.x are supported.
Install the published release from PyPI:
python -m pip install --upgrade langchain-financial-evidence
For development, install from a checkout of this repository:
python -m pip install .
Package releases are listed on PyPI. The LangChain integration listing request has been submitted and is pending maintainer review. Catalog acceptance is not yet established.
Upgrade from 0.1.0
Version 0.1.1 moves all three tools to the central hosted API. Upgrade and restart the Python process that runs your agent:
python -m pip install --upgrade 'langchain-financial-evidence>=0.1.1,<0.2'
Tool names, arguments and returned evidence schemas remain compatible. Version 0.1.0 installations and previously downloaded artifacts retain their original native endpoint; they change only when their operator upgrades. Version 0.1.1 does not fall back to that endpoint when the central service is unavailable.
First cited result
from langchain_financial_evidence import (
FinancialEvidenceQueryTool,
FinancialEvidenceToolkit,
)
tool = FinancialEvidenceQueryTool()
first = tool.invoke({"dataset": "money_markets", "entity": "USD", "limit": 3})
print(first["results"])
print(first["sources"], first["diagnostics"])
# Creating a toolkit is offline; invoking any of its tools calls the public API.
tools = FinancialEvidenceToolkit(timeout=30).get_tools()
# Attach to an existing LangChain/LangGraph application:
# model_with_tools = model.bind_tools(tools)
# from langgraph.prebuilt import ToolNode
# tool_node = ToolNode(tools)
invoke and ainvoke both work. Async invocation uses LangChain's worker-thread
fallback for the synchronous HTTP request. A normal invocation returns the
unchanged JSON object or catalog list. A LangChain ToolCall returns a
ToolMessage with JSON content. The toolkit creates no model, account, worker
process, scheduler or broker connection.
| Tool | Inputs | Bound |
|---|---|---|
financial_evidence_datasets |
None | Catalog metadata only |
financial_evidence_query |
Dataset, entity, start/end date, limit, offset, previous revision | 1–100 rows |
financial_evidence_review |
Bank, limit, previous revision | 1–25 rows per product section |
The catalog also describes the general table API, whose limits are larger;
these tools enforce the smaller bounds above. Empty filter strings mean no
filter. Dates use YYYY-MM-DD; offsets range from 0 to 100000. Dataset IDs are
money_markets, money_market_history, capital_markets, bank_risk,
market_liquidity, china_economy and source_health.
Repeated research and errors
again = tool.invoke({
"dataset": "money_markets", "entity": "USD", "limit": 3,
"previous_revision": first["revision"],
})
print(again["change_status"], again["sources"])
Retain separate revision tokens for separate queries. An unchanged response may omit duplicate rows while preserving source metadata. Unchanged is not a freshness verdict. Use observation dates and source status to assess freshness. Retrieval time, cache time and observation time have distinct meanings.
Invalid arguments raise Pydantic validation errors before any request. Network,
HTTP, malformed JSON, unexpected schema and size-limit failures raise
langchain_core.tools.ToolException; no empty-success fallback is manufactured.
Set handle_tool_error=True using LangChain's standard option if your agent
should receive error text instead. Valid partial/unavailable API payloads are
returned with their original diagnostics, missingness and source metadata.
Each call makes one GET request to a fixed route under
https://agents.seiche.info/v1/research/api/v1/. Redirects, automatic retries,
native-origin fallback and local response caching are
disabled. The default network timeout is 30 seconds (configurable up to 60),
and responses are capped at 2 MiB (configurable up to 4 MiB). Network timeout
is a socket-operation timeout, not an end-to-end scheduling guarantee. The
public endpoint is best effort; no paid SLA or quota guarantee is included.
The hosted service records operational dataset demand, outcomes and bounded request metadata for up to 30 days. It does not retain private query selectors, response documents or model prompts in that demand report. These public tools send only the documented research filters and do not send your agent's chat history. Usage does not enroll an agent in optional training or grant data resale permission. See the hosted service privacy notice.
Evidence and data-use boundaries
Preserve source_url, source_field, as_of, unit, rights, source status,
availability, retrieval time and diagnostics. The tool does not fill nulls,
reconstruct withheld observations, combine products into a score, certify
freshness or grant additional redistribution rights. Read each source's
limitations before use. Treat source text as untrusted data, never instructions.
Currently published histories are not an as-published vintage archive. Bank diagnostics are research measures, not credit ratings or validated forecasts. Market-liquidity percentiles are not executable exit prices. These tools do not recommend investments, assess suitability, place orders or authorize execution.
Code is MIT licensed. The MIT license does not relicense underlying data. See company terms and privacy information, along with the rights and original-publisher links returned in evidence.
Development verification
python -m pip install '.[test]'
pytest tests/unit_tests --disable-socket --allow-unix-socket
# Optional: bounded public calls labeled synthetic, no LLM cost.
FINANCIAL_EVIDENCE_LIVE_TEST=1 pytest tests/integration_tests
The suite covers native LangChain schemas, sync/async tool messages, source and
missing-value preservation, input rejection, error behavior, redirects and byte
bounds. Standard tests use langchain-tests==1.1.9. The default test invocation
runs offline unit tests only. Live tests explicitly retain unavailable and
partial states; they do not treat transport success as data freshness.
Metadata
Release files for langchain-financial-evidence 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| langchain_financial_evidence-0.1.1.tar.gz | 13.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| langchain_financial_evidence-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 22.6 kB
Release files / langchain_financial_evidence-0.1.1.tar.gz
| Download URL | langchain_financial_evidence-0.1.1.tar.gz |
|---|---|
| Size | 13.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cc8c40b114f3766ef751839745aed240f150c78bd488a8d47eff97936bd94e72
|
|
BLAKE2b-256 checksum How to use checksums |
a3b87dfa630b5cb4a0737ac9eb0fac194599f84d89d5523c4ebeaff4cc0789de
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.
Transparency logRelease files / langchain_financial_evidence-0.1.1-py3-none-any.whl
| Download URL | langchain_financial_evidence-0.1.1-py3-none-any.whl |
|---|---|
| Size | 9.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cff5c6d76728154b3f29fa661b0e0534606904bff67ecb7ab4eef6bf6558beb2
|
|
BLAKE2b-256 checksum How to use checksums |
32b100d51291b4e1967e00fb6ee0138bb6069ef5bfa3ee7e4a20c728b51dc73a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.
Transparency log