Skip to content

[GSoC Project Proposal]: ERDDAP Native Model Context Protocol (MCP) #106

@ChrisJohnNOAA

Description

@ChrisJohnNOAA

Project Description

The Model Context Protocol (MCP) is a new open standard that enables AI assistants to discover and utilize data sources as "tools."

This project aims to implement a native MCP Server within ERDDAP. This would allow any MCP-compliant AI client (such as Claude Desktop or IDE agents) to simply "connect" to an ERDDAP server URL and immediately gain the ability to search datasets, retrieve metadata, and fetch data snippets without manual API coding by the user.

Expected Outcomes

  1. MCP Servlet Implementation: A new Java-based MCP server embedded within ERDDAP that communicates via JSON-RPC (over HTTP or SSE).

  2. Tool Exposure: Implementation of core MCP "Tools" that map to ERDDAP functions:

  • search_datasets(query): Wraps ERDDAP's search engine to return dataset IDs.
  • get_schema(dataset_id): Returns variable names, units, and column types (crucial for preventing LLM hallucinations).
  • fetch_data(dataset_id, constraints): Retrieves data in JSON or CSV format for the AI to analyze.
  1. Documentation & Examples: A guide for connecting common AI clients (e.g., Claude Desktop) to the new ERDDAP MCP endpoint.

  2. (Stretch Goal) Prompt Templates: Implementation of MCP "Prompts" that help users start standard workflows (e.g., "Analyze recent temperature trends").

Skills Required

Java, MCP, LLM

Expected Project Size

175 hours

Project Difficulty

Intermediate

Mentor Name(s)

TBD

Mentor GitHub Handle(s)

TBD

Mentor Contact Email(s)

TBD

Contributor Evaluation/GSoC GitHub Issue Links

A pull request to address a small issue would be appreciated. You may find a good issue for this on our "good first issue" list: https://github.com/ERDDAP/erddap/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22good%20first%20issue%22

Additional Project Background/Links

ERDDAP/erddap#420
https://github.com/ERDDAP/erddap

Model Context Protocol Spec: https://modelcontextprotocol.io/
MCP Java SDK: https://github.com/modelcontextprotocol/java-sdk

Previous Project Idea Link(s)

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    GSoC26Project ideas for GSoC 2026project ideaDesignates a proposed project idea

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions