mcpField
E
ESG MCP Servers

ESG MCP Servers

Local
github.com/freminderLegal & Government0Updated 35w ago

About ESG MCP Servers

ESG MCP Servers is an open-source suite for extracting ESG metrics, processing reports, and searching EU regulations. It serves ESG analysts and developers through six independently runnable servers or one combined server.

Key features

  1. 01Extract ESRS-aligned ESG metrics
  2. 02Process PDF text and tables
  3. 03Generate embeddings and search vectors
  4. 04Download and search EU regulations
  5. 05Discover and download ESG reports

Use cases

  1. 01Extract emissions and workforce KPIs from reports
  2. 02Build searchable collections of ESG PDFs
  3. 03Find relevant passages in EU regulations

MCP support

Exposes 31 tools across six MCP servers for ESG extraction, PDF processing, vector storage, regulation search, and web scraping. Clients can run individual servers or the combined server.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"freminder-esg-mcp-servers": {
"command": "uvx",
"args": [
"esg-mcp-servers"
],
"env": {
"ANTHROPIC_API_KEY": "<ANTHROPIC_API_KEY>",
"POSTGRES_DSN": "<POSTGRES_DSN>",
"MONGODB_URI": "<MONGODB_URI>",
"EMBEDDING_MODEL": "<EMBEDDING_MODEL>",
"EMBEDDING_DIMENSIONS": "<EMBEDDING_DIMENSIONS>"
}
}
}
}
Run commanduvx esg-mcp-servers
Environment variables to set
ANTHROPIC_API_KEYSecretAnthropic API key — required for RAG queries and LLM-based metric extraction
POSTGRES_DSNPostgreSQL connection string with pgvector extension (e.g. postgresql://esg:esg@localhost/esg_platform)
MONGODB_URIMongoDB connection string for PDF binary storage via GridFS (e.g. mongodb://localhost:27017)
EMBEDDING_MODELSentence-transformer model name for embedding generation (default: Snowflake/snowflake-arctic-embed-l-v2.0)
EMBEDDING_DIMENSIONSEmbedding vector dimension size (default: 1024)

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
pypiesg-mcp-servers0.1.2

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project 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 ([email protected])

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:

VariableDefaultDescription
POSTGRES_DSNpostgresql://esg:esg@localhost/esg_platformPostgreSQL connection string
MONGODB_URImongodb://localhost:27017MongoDB connection string
ANTHROPIC_API_KEY—Required for RAG and LLM extraction
EMBEDDING_MODELSnowflake/snowflake-arctic-embed-l-v2.0Sentence-transformer model
EMBEDDING_DIMENSIONS1024Embedding vector size

Servers & Tools

esg-metrics-extractor (11 tools)

ESRS-aligned KPI extraction for emissions, energy, water, waste, social, and governance domains.

ToolDescription
extract_emissions_dataGHG Scope 1, 2, 3 extraction
extract_energy_dataEnergy consumption & renewables (ESRS E2)
extract_water_dataWater withdrawal, discharge, consumption (ESRS E3)
extract_waste_dataWaste generation, recycling, landfill (ESRS E5)
extract_social_dataWorkforce, diversity, H&S (ESRS S1)
extract_governance_dataBoard composition & governance (ESRS G1)
answer_esg_queryFree-text RAG Q&A over documents
keyword_similarity_searchSemantic keyword search in documents
detect_query_domainClassify query into ESG domain
detect_emissions_query_typeDetect emissions scope/year from query
batch_extract_metricsExtract all KPIs and persist to DB
esg-pdf-processor (5 tools)

PDF validation, text/table extraction, and embedding generation.

ToolDescription
verify_esg_reportRandomForest ESG report classifier
extract_text_chunksExtract and chunk PDF text
extract_tablesTable extraction with OCR fallback
generate_embeddingsBatch embedding generation
process_pdf_full_pipelineEnd-to-end: extract, embed, store
esg-vector-store (5 tools)

pgvector CRUD operations for document chunks and query cache.

ToolDescription
upsert_document_chunksInsert/update chunks with embeddings
similarity_searchCosine similarity search
get_cached_query_responseRetrieve cached LLM responses
cache_query_responseStore LLM response in cache
list_documentsList indexed documents
esg-regulations (5 tools)

EU ESG regulation download, ingestion, and semantic search.

ToolDescription
download_regulationDownload regulation PDF from EUR-Lex
download_all_regulationsBatch download all configured regulations
ingest_regulationExtract, parse articles, embed, store
search_regulation_textSemantic search across regulation articles
list_regulationsList ingested regulations
esg-scraper (5 tools)

ESG report discovery and download from the web.

ToolDescription
search_esg_reportsMulti-engine search for ESG PDFs
crawl_company_websiteDeep-crawl website for PDF links
download_pdfDownload PDF and store in GridFS
get_scraping_statusCheck scrape job status
cancel_scraping_jobCancel running scrape job
esg-mcp-all (31 tools)

All tools from all servers in a single process.

Claude Desktop Configuration

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "esg-metrics": {
      "command": "esg-metrics-extractor"
    },
    "esg-pdf": {
      "command": "esg-pdf-processor"
    },
    "esg-vectors": {
      "command": "esg-vector-store"
    },
    "esg-regulations": {
      "command": "esg-regulations"
    },
    "esg-scraper": {
      "command": "esg-scraper"
    }
  }
}

Or use the combined server for all tools:

{
  "mcpServers": {
    "esg": {
      "command": "esg-mcp-all"
    }
  }
}

Optional: Scraper Dependencies

The scraper server requires Selenium for JavaScript-heavy sites:

pip install esg-mcp-servers[scraper]

Development

git clone https://github.com/freminder/esg-mcp-servers.git
cd esg-mcp-servers
pip install -e ".[scraper,dev]"
docker compose up -d
esg-mcp-migrate

License

MIT — see LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.