Skip to main content

Stigmergent

Multi-agent coordination platform using stigmergic intelligence. Agents coordinate through a shared blackboard -- not through each other -- the same way ant colonies organize millions of workers without a manager.

Five reference agents handle daily business operations: email triage, calendar management, project tracking, meeting prep, and daily briefings. The blackboard protocol is the real product -- agents are the proof it works.

License

Quickstart

Option 1: MCP Server (connect to running agents)

pip install stigmergent-mcp

Configure your agent URLs:

export CSI_CHIEF_URL=https://your-chief-agent.azurecontainerapps.io
export CSI_COMMS_URL=https://your-comms-agent.azurecontainerapps.io
export CSI_OPS_URL=https://your-ops-agent.azurecontainerapps.io
export CSI_SCHEDULE_URL=https://your-schedule-agent.azurecontainerapps.io
export CSI_KNOWLEDGE_URL=https://your-knowledge-agent.azurecontainerapps.io

Add to Claude Code:

{
  "mcpServers": {
    "stigmergent": {
      "command": "stigmergent-mcp",
      "env": {
        "CSI_CHIEF_URL": "https://your-chief-agent.azurecontainerapps.io",
        "CSI_COMMS_URL": "https://your-comms-agent.azurecontainerapps.io",
        "CSI_OPS_URL": "https://your-ops-agent.azurecontainerapps.io",
        "CSI_SCHEDULE_URL": "https://your-schedule-agent.azurecontainerapps.io",
        "CSI_KNOWLEDGE_URL": "https://your-knowledge-agent.azurecontainerapps.io"
      }
    }
  }
}

Option 2: Full Local Stack (agents + blackboard)

git clone https://github.com/CSI-Platform/stigmergent.git
cd stigmergent
cp .env.template .env
# Fill in your M365 credentials and Anthropic API key
docker-compose up

This starts all 5 agents locally on ports 8001-8005.

What Each Agent Does

Agent Port Role
Communications Specialist 8001 Email triage, drafting, commitment scanning, client pulse
Operations Manager 8002 Project tracking, action items, accountability checks
Knowledge Curator 8003 Meeting prep, transcript processing, knowledge retrieval
Schedule Coordinator 8004 Calendar management, availability, scheduling
Chief of Staff 8005 Morning briefings, delegation, aggregation

MCP Tools

The MCP server exposes 9 tools:

Tool Description
morning_briefing Daily briefing -- calendar, projects, blackboard alerts
triage_emails Classify and prioritize recent emails
draft_email Draft a professional email from instructions
check_calendar Show upcoming events
schedule_meeting Create calendar events from natural language
list_projects Active projects with status and chase dates
accountability_check Scan for overdue items and stale projects
scan_commitments Find open commitments in sent mail
prep_meeting Build context and talking points for meetings

How It Works

You (Claude Code / any MCP client)
    |
    v
MCP Server (stigmergent-mcp)
    |
    v  A2A JSON-RPC
+-------+-------+-----+-------+------+
| Chief | Comms | Ops | Sched | Know |  <-- Agents (Docker / Azure)
+-------+-------+-----+-------+------+
    |       |       |
    v       v       v
  Dataverse    Graph API    SharePoint
 (Blackboard)  (Mail/Cal)   (Projects)

Stigmergic coordination: Agents write entries to the blackboard (Dataverse). Other agents sense those entries and act. The Communications Specialist writes a Classification entry; the Operations Manager reads it during an accountability check. No direct messaging needed for routine coordination.

Peer delegation: For complex tasks, agents call each other via A2A protocol. Ops asks Comms to draft follow-up emails. Comms asks Knowledge for context before drafting.

LLM-first routing: Each agent uses Claude Haiku for fast intent classification with keyword fallback. Novel phrasing gets routed correctly without brittle pattern matching.

Configuration

Copy .env.template to .env and fill in:

Variable Required Description
CSI_TENANT_ID Yes Azure AD tenant ID
CSI_CLIENT_ID Yes App registration client ID
CSI_CLIENT_SECRET Yes App registration client secret
CSI_DATAVERSE_URL Yes Dataverse environment URL
CSI_SHAREPOINT_HOST Yes SharePoint host domain
CSI_SHAREPOINT_SITE_PATH Yes SharePoint site path
CSI_USER_EMAIL Yes User email for Graph API calls
ANTHROPIC_API_KEY Yes Anthropic API key for LLM
CSI_LLM_MODEL No Main model (default: claude-sonnet-4-6)
CSI_LLM_ROUTER_MODEL No Router model (default: claude-haiku-4-5-20251001)
TZ No Timezone (default: America/Phoenix)

Prerequisites

  • Microsoft 365 tenant with Outlook, Calendar, SharePoint
  • Azure AD app registration with Graph API permissions (Mail.Read, Calendars.ReadWrite, Sites.ReadWrite.All)
  • Dataverse environment with the blackboard table provisioned
  • Anthropic API key for Claude
  • Docker for running agents locally
  • Python 3.13+ for the MCP server

Blackboard Protocol

The blackboard is the coordination surface. Agents write entries with:

  • Entry type (Classification, ActionRequired, AccountabilityAlert, ClientPulse, etc.)
  • Status lifecycle (New -> Read -> Acted -> Expired)
  • Priority (Low, Normal, High, Urgent)
  • Source agent identity
  • Payload (flexible JSON)

Any A2A-compliant agent can participate by reading and writing blackboard entries. The protocol spec: extensions/blackboard/extension-spec.yaml

Project Structure

stigmergent/
  agents/
    chief-of-staff/          # Briefings, delegation, aggregation
    communications-specialist/ # Email, commitments, client pulse
    operations-manager/       # Projects, action items, accountability
    knowledge-curator/        # Meeting prep, knowledge management
    schedule-coordinator/     # Calendar, scheduling, availability
  csi-core/                  # Shared library (auth, blackboard, Graph, LLM, router)
  mcp-server/                # MCP server (9 tools, stdio transport)
  extensions/                # Blackboard protocol spec
  docker-compose.yml         # Local development stack

Building Your Own Agent

Any Python A2A server can participate in Stigmergent coordination by reading and writing blackboard entries. The key contract: write entries to announce what you've done or discovered. Read entries to sense what other agents have done. The blackboard handles the coordination -- you just participate.

License

Apache License 2.0. See LICENSE for the full text.

Built by Copper State Intelligence.

Metadata

Release files for stigmergent-mcp 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for stigmergent-mcp 0.1.0
File Size Uploaded Provenance Actions
stigmergent_mcp-0.1.0.tar.gz 6.5 kB Without provenance Details for stigmergent_mcp-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for stigmergent-mcp 0.1.0
File Interpreter ABI Platform Actions
stigmergent_mcp-0.1.0-py3-none-any.whl Python 3 none any Details for stigmergent_mcp-0.1.0-py3-none-any.whl

Total release size: 18.1 kB

Release files / stigmergent_mcp-0.1.0.tar.gz

Download URL stigmergent_mcp-0.1.0.tar.gz
Size 6.5 kB
Tags Source
SHA-256 checksum
How to use checksums
09ba33e1c4b4d010bd529d234f69d793607d3a7e4419fa7d7137c9b700894542
BLAKE2b-256 checksum
How to use checksums
ef6d101ccd03be208ac0ccf468108085abe9f7bac20615cfd9a8352693ba4cab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / stigmergent_mcp-0.1.0-py3-none-any.whl

Download URL stigmergent_mcp-0.1.0-py3-none-any.whl
Size 11.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a554c79d40c3ff934ffec86f5809888168aff372ec0a972ff350915dcb5c6b08
BLAKE2b-256 checksum
How to use checksums
b76e6d67b343a8ea4c97ed4ae48a1c4a31534a35f2a8aaf744c504bc5ed60eaf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Security for stigmergent-mcp 0.1.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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A 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.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page