| README.md | ||
civic-mcp
WellSpr.ing Civic MCP — Portal Template & Documentation
The template repository for all area-code MCP portals in the WellSpr.ing NNN.today network.
This repository documents the schema, tools, governance, and infrastructure pattern used by all 32 (and growing) civic MCP portals. It is the platform_docs reference cited in the federation manifest.
What is a WellSpr.ing Civic MCP Portal?
Each area-code portal is a Model Context Protocol server exposing six civic AI tools scoped to a US metro area. Together, the 32 portals form a federated civic AI substrate — independently operable, locally governed, nationally coherent.
The Six Civic Tools
| Tool | Description |
|---|---|
get_local_news |
Latest civic news for the area |
get_free_items |
Hyperlocal mutual aid free-item exchange |
get_businesses |
Local business directory |
submit_civic_idea |
Civic participation intake — ideas → action |
get_civic_services |
Government services and contact information |
ody_chat |
Covenant-governed conversational civic AI (Ody) |
File Structure
Each portal repo contains:
mcp-{areacode}/
├── server.json # MCP server descriptor (v2 schema)
├── README.md # Portal documentation
├── GOVERNANCE.md # Covenant governance reference
├── LICENSE # MIT
├── llms.txt # LLM discovery file
└── .well-known/
└── mcp.json # MCP discovery endpoint
server.json Schema (v2)
{
"schema_version": "v2",
"name": "{areaCode} {city} MCP Server",
"area_code": "{areaCode}",
"domain": "{areaCode}.today",
"mcp_endpoint": "https://{areaCode}.today/mcp",
"portal_url": "https://{areaCode}.today",
"city": "{primaryCity}",
"state": "{state}",
"country": "US",
"coordinates": { "lat": 0.0, "lng": 0.0 },
"tagline": "{civic tagline}",
"network": "WellSpr.ing NNN.today",
"sovereign_repo": "https://git.wellspr.ing/WellBuilder/mcp-{areaCode}",
"federation_url": "https://wellspr.ing/mcp/federation.json",
"adjacent": ["{adjacent area codes}"],
"tools": [/* see above */],
"governance": {
"conduct": "https://wellspr.ing/constitution",
"vcap": "https://wellspr.ing/vault/ody/attestation-2026-04-17.json",
"sovereignty": "https://wellspr.ing/sovereignty",
"model": "covenant — freely given, so freely given"
},
"mirrors": {
"primary": "https://git.wellspr.ing/WellBuilder/mcp-{areaCode}",
"community": "https://codeberg.org/wellspring/mcp-{areaCode}"
}
}
Federation Manifest
The canonical index of all portals: wellspr.ing/mcp/federation.json
Network Traversal
Any MCP-capable agent connected to one portal can traverse the entire network via get_adjacent_nodes — hop from 425 (Eastside WA) → 206 (Seattle) → 253 (Tacoma) → 360 (Western WA) without a central directory.
Governance
All portals operate under the Eight Principles. The WellSpr.ing covenant is non-hierarchical — each portal is locally governed, network-coherent.
VCAP attestation: wellspr.ing/vault/ody/attestation-2026-04-17.json
Infrastructure Architecture
Sovereign Primary: git.wellspr.ing/WellBuilder/mcp-{code} ← source of truth
└─push-mirror→ codeberg.org/wellspring/mcp-{code} ← community discovery
└─push-mirror→ github.com/WellBuilder/mcp-{code} ← commercial discovery (if restored)
See NotGit.org/formula for the three-mirror architecture.
Adding a New Portal
- Fork this template
- Update
server.jsonwith the area code's specifics - Open a pull request at git.wellspr.ing/wellspring/civic-mcp
- Attest to the Eight Principles
WellSpr.ing — Civic AI for the commons. Freely given, so freely given. wellspr.ing · notgit.org · noflare.org