Skip to main content

MCP server that narrates your code changes, from commits to deployments.

Project description

DevNarrate

GitHub Repo Release

MCP server that narrates your code changes, from commits to deployments.

Features

  • Smart Commit Messages with user approval
  • PR Descriptions driven by customizable templates
  • GitHub & GitLab support for PR flows
  • Token-aware diff handling with automatic pagination
  • Safety-first workflow by requiring staged changes

Installation (PyPI)

pip install devnarrate

# Install pre-release builds
pip install --pre devnarrate

Register the MCP server

Use the Python interpreter from the environment where you ran pip install (e.g. /path/to/venv/bin/python). Capture it once and reuse:

PYTHON_BIN=$(python -c 'import sys; print(sys.executable)')

# Claude Code (global scope)
claude mcp add --scope user DevNarrate -- "$PYTHON_BIN" -m devnarrate.server

# Claude Code (project scope)
claude mcp add DevNarrate -- "$PYTHON_BIN" -m devnarrate.server
  • Cursor (~/.cursor/mcp.json):
{
  "mcpServers": {
    "DevNarrate": {
      "command": "/path/to/venv/bin/python",
      "args": ["-m", "devnarrate.server"]
    }
  }
}

Restart Cursor after editing the config.

Usage

Commit Messages

DevNarrate works entirely off staged changes:

git add <file1> <file2>
# stage everything tracked:
git add -u

Then ask Claude (or Cursor):

Generate a commit message for my changes

DevNarrate summarizes the diff, proposes a conventional commit, and waits for approval before committing.

PR Descriptions

  1. Ask Claude: "Create a PR to main from my current branch"
  2. Choose a template if you have custom ones in .devnarrate/pr-templates/
  3. Review the generated PR description and approve to let DevNarrate call gh or glab

Example template (.devnarrate/pr-templates/feature.md):

## Summary
[What does this PR do?]

## Changes
-
-

## Testing
[How to test]

## Related Issues
[Links]

If no custom template exists, DevNarrate uses a sensible default.

Platform Requirements

  • Commits: only needs git
  • GitHub PRs: install gh and run gh auth login
  • GitLab PRs: install glab and run glab auth login

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

devnarrate-0.1.0a4.tar.gz (73.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

devnarrate-0.1.0a4-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file devnarrate-0.1.0a4.tar.gz.

File metadata

  • Download URL: devnarrate-0.1.0a4.tar.gz
  • Upload date:
  • Size: 73.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for devnarrate-0.1.0a4.tar.gz
Algorithm Hash digest
SHA256 c73f26ad3f021fd4d4bd9b2f1e0b5043fe1cff9f26f05252ab7984b3e918e05b
MD5 01921876c7fd6c355987df2f8b3ac815
BLAKE2b-256 cea827e8b4c468f332401fc47a86517fba379817d4cd54df7a43513d248bd1a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for devnarrate-0.1.0a4.tar.gz:

Publisher: publish.yml on kmandana/DevNarrate

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file devnarrate-0.1.0a4-py3-none-any.whl.

File metadata

  • Download URL: devnarrate-0.1.0a4-py3-none-any.whl
  • Upload date:
  • Size: 13.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for devnarrate-0.1.0a4-py3-none-any.whl
Algorithm Hash digest
SHA256 c7d161b72ee45e0f566c691f5da1270814bb2523861cc3958925fba00b45f8d8
MD5 e6cb22a6e5a0bed69dc417c79ee03c6e
BLAKE2b-256 94fcef9f2ecd1562f1898873dac327b2915043bdbb84beea73770542eaa622bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for devnarrate-0.1.0a4-py3-none-any.whl:

Publisher: publish.yml on kmandana/DevNarrate

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page