Skip to content

Add full tool declaration metadata for tools/list #11

Add full tool declaration metadata for tools/list

Add full tool declaration metadata for tools/list #11

Workflow file for this run

name: Deploy Documentation
on:
push:
branches: [main, master]
paths:
- "docs/**"
- "mkdocs.yml"
- "pyproject.toml"
- ".github/workflows/docs.yml"
pull_request:
branches: [main, master]
paths:
- "docs/**"
- "mkdocs.yml"
- "pyproject.toml"
- ".github/workflows/docs.yml"
workflow_dispatch:
permissions:
contents: read
pages: write
id-token: write
pull-requests: write
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
build:
runs-on: ubuntu-latest
outputs:
site_url: ${{ steps.site-url.outputs.url }}
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: "3.12"
- name: Install docs dependencies
run: |
python -m pip install --upgrade pip
pip install -e '.[docs]'
- name: Build documentation
run: mkdocs build --strict
- name: Upload Pages artifact
uses: actions/upload-pages-artifact@v3
with:
path: site
- name: Compute published URL
id: site-url
run: |
echo "url=https://${{ github.repository_owner }}.github.io/${{ github.event.repository.name }}/" >> "$GITHUB_OUTPUT"
comment:
runs-on: ubuntu-latest
needs: build
if: github.event_name == 'pull_request' && github.event.pull_request.head.repo.fork == false
steps:
- name: Comment PR with docs URL
uses: actions/github-script@v7
env:
SITE_URL: ${{ needs.build.outputs.site_url }}
with:
script: |
const marker = "<!-- pymcp-docs-comment -->";
const body = `${marker}
## Documentation Build
The docs site built successfully for this pull request.
Target GitHub Pages URL: ${process.env.SITE_URL}
The published site updates after merge to \`main\` or \`master\`.`;
const { data: comments } = await github.rest.issues.listComments({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
});
const existing = comments.find(
(comment) =>
comment.user.type === "Bot" && comment.body.includes(marker)
);
if (existing) {
await github.rest.issues.updateComment({
owner: context.repo.owner,
repo: context.repo.repo,
comment_id: existing.id,
body,
});
return;
}
await github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body,
});
deploy:
if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master'
needs: build
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4