Skip to content

About

This site describes seismo-mcp as a general-purpose seismic MCP: the tools, their seismological meaning, and the JSON contracts. It is not an operator manual, not a deployment guide, and not a live playground.

Spec family

The contract family is seismo-mcp/v1. That string appears on every envelope as spec. A breaking change to the envelope or to references would be a new family. None is planned.

Thing Version Changes when
Spec family seismo-mcp/v1 Breaking change to the envelope or to references
Server server_version (semver) Every release. Minor bump per level
Tool tool_version (semver) Patch: same contract, implementation fix. Minor: optional field, new enum value, new warning code. Major is not allowed — publish a new tool name
Menus and frozen constants dated provenance entries A frozen constant changing is a recorded campaign event
Profiles name@version Any field change

Within v1, contracts are additive. Fields are added only as optional. Enums only grow. Types are not renamed, removed, or re-typed. A level release is a set of new tools plus optional profile fields whose defaults preserve existing behaviour.

Levels

Level 1 is the standard tool set: catalogue, inventory, waveform summaries, forward modelling, solutions, external bulletins, guided re-picking, review, and session state. Level 3 adds rendered figures. Later levels add extended analysis and operational write paths. Each level adds tools; it does not modify an existing contract.

What this site is not

  • A description of any particular institute, host, or network.
  • Authentication or access instructions for a running server.
  • An interactive MCP console.
  • The internal specification. The live contract is the registry; this site translates it for a public reader.

Contract tables and examples on the tool pages are generated from ToolSpec. Do not treat a hand-copied JSON fragment elsewhere as the source of truth.

Building the site

From the repository root, with the docs extra installed:

cd public-docs && mkdocs build --strict
PYTHONPATH=. python public-docs/scripts/generate_contracts.py --check

The build writes site/, which is not in version control. site_url in mkdocs.yml is configuration only.