freminder avatar

ESG MCP Servers

freminder/esg-mcp-servers

This is a PostgreSQL and MongoDB backed toolkit for analyzing ESG reports using semantic search and LLM extraction. It exposes 31 tools across six servers: a metrics extractor that pulls ESRS aligned KPIs for emissions, energy, water, and social domains, a PDF processor with table extraction and embedding generation, a pgvector store for similarity search and query caching, a regulation server that downloads and ingests EU directives from EUR-Lex, and a web scraper for discovering company reports. You'll need an Anthropic API key for RAG queries and metric extraction. Reach for this if you're building compliance workflows or ESG data pipelines and want structured outputs from unstructured sustainability documents.

tools
31
auth
Secret needed
transport
STDIO
env vars
5
last updated
Feb 28, 2026

Tools

31 tools

Public tool metadata for what this MCP can expose to an agent.

extract_emissions_dataGHG Scope 1, 2, 3 extraction

GHG Scope 1, 2, 3 extraction

No parameter schema in public metadata yet.

extract_energy_dataEnergy consumption & renewables (ESRS E2)

Energy consumption & renewables (ESRS E2)

No parameter schema in public metadata yet.

extract_water_dataWater withdrawal, discharge, consumption (ESRS E3)

Water withdrawal, discharge, consumption (ESRS E3)

No parameter schema in public metadata yet.

extract_waste_dataWaste generation, recycling, landfill (ESRS E5)

Waste generation, recycling, landfill (ESRS E5)

No parameter schema in public metadata yet.

extract_social_dataWorkforce, diversity, H&S (ESRS S1)

Workforce, diversity, H&S (ESRS S1)

No parameter schema in public metadata yet.

extract_governance_dataBoard composition & governance (ESRS G1)

Board composition & governance (ESRS G1)

No parameter schema in public metadata yet.

answer_esg_queryFree-text RAG Q&A over documents

Free-text RAG Q&A over documents

No parameter schema in public metadata yet.

keyword_similarity_searchSemantic keyword search in documents

Semantic keyword search in documents

No parameter schema in public metadata yet.

detect_query_domainClassify query into ESG domain

Classify query into ESG domain

No parameter schema in public metadata yet.

detect_emissions_query_typeDetect emissions scope/year from query

Detect emissions scope/year from query

No parameter schema in public metadata yet.

batch_extract_metricsExtract all KPIs and persist to DB

Extract all KPIs and persist to DB

No parameter schema in public metadata yet.

verify_esg_reportRandomForest ESG report classifier

RandomForest ESG report classifier

No parameter schema in public metadata yet.

extract_text_chunksExtract and chunk PDF text

Extract and chunk PDF text

No parameter schema in public metadata yet.

extract_tablesTable extraction with OCR fallback

Table extraction with OCR fallback

No parameter schema in public metadata yet.

generate_embeddingsBatch embedding generation

Batch embedding generation

No parameter schema in public metadata yet.

process_pdf_full_pipelineEnd-to-end: extract, embed, store

End-to-end: extract, embed, store

No parameter schema in public metadata yet.

upsert_document_chunksInsert/update chunks with embeddings

Insert/update chunks with embeddings

No parameter schema in public metadata yet.

similarity_searchCosine similarity search

Cosine similarity search

No parameter schema in public metadata yet.

get_cached_query_responseRetrieve cached LLM responses

Retrieve cached LLM responses

No parameter schema in public metadata yet.

cache_query_responseStore LLM response in cache

Store LLM response in cache

No parameter schema in public metadata yet.

list_documentsList indexed documents

List indexed documents

No parameter schema in public metadata yet.

download_regulationDownload regulation PDF from EUR-Lex

Download regulation PDF from EUR-Lex

No parameter schema in public metadata yet.

download_all_regulationsBatch download all configured regulations

Batch download all configured regulations

No parameter schema in public metadata yet.

ingest_regulationExtract, parse articles, embed, store

Extract, parse articles, embed, store

No parameter schema in public metadata yet.

search_regulation_textSemantic search across regulation articles

Semantic search across regulation articles

No parameter schema in public metadata yet.

list_regulationsList ingested regulations

List ingested regulations

No parameter schema in public metadata yet.

search_esg_reportsMulti-engine search for ESG PDFs

Multi-engine search for ESG PDFs

No parameter schema in public metadata yet.

crawl_company_websiteDeep-crawl website for PDF links

Deep-crawl website for PDF links

No parameter schema in public metadata yet.

download_pdfDownload PDF and store in GridFS

Download PDF and store in GridFS

No parameter schema in public metadata yet.

get_scraping_statusCheck scrape job status

Check scrape job status

No parameter schema in public metadata yet.

cancel_scraping_jobCancel running scrape job

Cancel running scrape job

No parameter schema in public metadata yet.

Sponsors

Configuration

ANTHROPIC_API_KEY*secret

Anthropic API key — required for RAG queries and LLM-based metric extraction

POSTGRES_DSN*

PostgreSQL connection string with pgvector extension (e.g. postgresql://esg:esg@localhost/esg_platform)

MONGODB_URI*

MongoDB connection string for PDF binary storage via GridFS (e.g. mongodb://localhost:27017)

EMBEDDING_MODEL

Sentence-transformer model name for embedding generation (default: Snowflake/snowflake-arctic-embed-l-v2.0)

EMBEDDING_DIMENSIONS

Embedding vector dimension size (default: 1024)

Readme

ESG MCP Servers

Open-source Model Context Protocol servers for ESG (Environmental, Social, and Governance) data extraction, analysis, and regulation management.

31 tools across 6 servers — install once, run only what you need.

Author: Ioannis Michos (johnmichos.tf@gmail.com)

Quick Start

pip install esg-mcp-servers

Prerequisites

ServiceRequired for
PostgreSQL 16 + pgvectorVector storage, metrics, regulations
MongoDB 7PDF binary storage (GridFS)
Anthropic API keyRAG queries, metric extraction

Spin up local databases with Docker:

docker compose up -d

Run the database migration:

esg-mcp-migrate

Environment Variables

Copy .env.example and fill in your values:

cp .env.example .env

Key variables:


View the full README on GitHub

Details

Repository
github.com/freminder/esg-mcp-servers
Categories
AI & LLM Tools, Documents & Knowledge, Search & Web Crawling, Data & Analytics
Package
esg-mcp-servers
Transport
STDIO
Auth
Required
Registry
MCP registry, active

Related AI & LLM Tools MCP servers

View all
1getcyphrex avatarCyphrexgetcyphrex/platformChecks AI agent actions before they run. Signed, RFC 3161 timestamped evidence for audits.0stars
2goatgaucho avatarTrustLayergoatgaucho/trust-layerAgent reputation scoring: trust scores, Sybil detection, cross-chain identity for 133K+ agents0stars
3goodmeta avatarIntelligence Mcpgoodmeta/intelligence-mcpAgent payments ecosystem intelligence. Scans GitHub/HN/npm across AP2, ACP, x402, MPP, UCP.0stars
4gsepcore avatarGsep Mcpgsepcore/gsep-mcpAI agent security via MCP: C3 firewall, C4 immune system, C5 action guard, self-evolving prompts.0stars
5haim-barad avatarDrinkedIn — licensed bar dataio.github.haim-barad/drinkedinLicensed bar data from public registers, x402. Agent-bar tools deprecated. No real alcohol.0stars
6pareelamre avatarForesea Forecastingpareelamre/analyzing-llm-rationaleForecast future events and scan prediction-market edges.0stars