OSDU MCP Server
AI-powered access to OSDU subsurface data through natural language.
Enable AI assistants to interact with the OSDU (Open Subsurface Data Universe) platform through conversational interfaces. Search data, manage schemas, handle records, and maintain compliance—all through natural language.
Why OSDU MCP Server?
Transform complex OSDU API workflows into simple conversations:
Before:
curl -X POST https://osdu.com/api/search/v2/query \
-H "Authorization: Bearer $TOKEN" \
-d '{"kind":"osdu:wks:master-data--Well:*"}'
# ... parse JSON, check schemas, format records, handle ACLs ...
After:
You: "Find all wells in the North Sea and show their schemas"
AI: ✅ Found 247 wells
📋 Retrieved schema requirements
🎯 Ready to work with the data
Key Features
| Feature | Description |
|---|---|
| Natural Language | Complex API calls and Elasticsearch queries through conversation |
| Multi-Cloud Auth | Azure, AWS, and GCP with zero-config credential discovery |
| 31 MCP Tools | Complete OSDU API coverage (storage, search, schema, legal, partition) |
| Template-Driven | Pre-built templates eliminate format-guessing errors |
| Safety Controls | Write/delete protection, confirmation requirements, audit logging |
| Resources & Prompts | Guided workflows and interactive examples |
Quick Start
Setup
mcp add osdu-mcp-server -- uvx osdu-mcp-server \
-e OSDU_MCP_SERVER_URL=https://your-osdu.com \
-e OSDU_MCP_SERVER_DATA_PARTITION=opendes \
-e AZURE_CLIENT_ID=your-client-id \
-e AZURE_TENANT_ID=your-tenant-id
Or add manually to your MCP configuration:
{
"mcpServers": {
"osdu-mcp-server": {
"command": "uvx",
"args": ["osdu-mcp-server"],
"env": {
"OSDU_MCP_SERVER_URL": "https://your-osdu.com",
"OSDU_MCP_SERVER_DATA_PARTITION": "opendes",
"AZURE_CLIENT_ID": "your-client-id",
"AZURE_TENANT_ID": "your-tenant-id"
}
}
}
}
Note: Authentication credentials (Azure/AWS/GCP) are auto-discovered from your environment. See Getting Started for all auth methods.
Try It
"Check the health of my OSDU platform"
"List all schemas available in the system"
"Find wells in the North Sea region"
"Show me the legal tag template"
What's Included
31 Tools across 6 OSDU services:
- Core - Health checks and user entitlements
- Partition - List, get, create, update, and delete partitions
- Legal - Complete legal tag management with search and batch operations
- Schema - Schema discovery, search, and management
- Search - Elasticsearch queries and record discovery
- Storage - Full CRUD operations with versioning and batch support
3 Prompts for guided workflows:
- Capability overview and quick start
- Search pattern guidance with Elasticsearch examples
- Complete record lifecycle workflows
4 Resources with working templates:
- Legal tag templates
- Record structure examples
- ACL format patterns
- Search query patterns
Configuration
Required
OSDU_MCP_SERVER_URL- Your OSDU platform URLOSDU_MCP_SERVER_DATA_PARTITION- Data partition ID
Optional
OSDU_MCP_SERVER_DOMAIN- Data domain for ACLs (default:contoso.com)OSDU_MCP_ENABLE_WRITE_MODE- Enable create/update (default:false)OSDU_MCP_ENABLE_DELETE_MODE- Enable delete/purge (default:false)
License
Apache License 2.0 - see LICENSE for details.
Metadata
Release files for osdu-mcp-server 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| osdu_mcp_server-1.0.0.tar.gz | 76.3 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| osdu_mcp_server-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 182.5 kB
Release files / osdu_mcp_server-1.0.0.tar.gz
| Download URL | osdu_mcp_server-1.0.0.tar.gz |
|---|---|
| Size | 76.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3ee13b1b45e4cf2df1dca64980f3af25c1333655d6ff4a41e672e9598311001a
|
|
BLAKE2b-256 checksum How to use checksums |
71955d045eb915dbdd7df52956baaeb07b92d4d4636dfd49866a643f51232c51
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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 28, 2025.
Transparency logRelease files / osdu_mcp_server-1.0.0-py3-none-any.whl
| Download URL | osdu_mcp_server-1.0.0-py3-none-any.whl |
|---|---|
| Size | 106.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0d862464beedef341d66510786a4c0ca2764b64880181a36269f9e0f314896ac
|
|
BLAKE2b-256 checksum How to use checksums |
196077b315ae07a7721f00c7262e5b57fb6225c372ceadcc9ff67b2cd811124e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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 28, 2025.
Transparency logSecurity for osdu-mcp-server 1.0.0
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.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for osdu_mcp_server-1.0.0.tar.gz
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 28, 2025.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.