Skip to content

AGENTS.md

91 lines · 2.6 KB · Markdown
Raw

@kody/atlassian-mcp — agent notes

Human setup and intent live in README.md. This file is for agents: imports, smoke checks, snippets, and edge cases. Never paste tokens. Do not disable live webhooks or jobs.

Auth

LaneCredentialNotes
PreferredMCP server atlassiankody.mcpServerAdd → authorize authUrl. Helpers use kody.mcp["atlassian"].
Fallback@kody/jira OAuth / API tokenBYO 3LO or email + API token. See https://kody.codes/@kody/jira

Do not register an Atlassian OAuth app for the one-click MCP path. After fork, connect the caller's Atlassian site — do not treat live @kody/atlassian-mcp as yours. MCP server name stays atlassian; -mcp is only the Kody package id.

Import paths

ExportImport
package overview / MCP setupkody:@kody/atlassian-mcp
smoke-testkody:@kody/atlassian-mcp/smoke-test
search-jirakody:@kody/atlassian-mcp/search-jira
search-confluencekody:@kody/atlassian-mcp/search-confluence

Prefer static kody:@kody/atlassian-mcp/... imports from execute. Do not lead with packages.invoke.

Smoke test (read-only)

import smokeTest from 'kody:@kody/atlassian-mcp/smoke-test'

export default async function main() {
	return await smokeTest()
	// MCP connected => { ok: true, live: true, via: 'mcp', ... }
	// otherwise => { ok: true, live: false, setup: { mcp, oauthApiFallback } }
}

Common snippets

Search Jira:

import searchJira from 'kody:@kody/atlassian-mcp/search-jira'

export default async function main() {
	return await searchJira({
		jql: 'assignee = currentUser() ORDER BY updated DESC',
		maxResults: 10,
	})
}

Search Confluence:

import searchConfluence from 'kody:@kody/atlassian-mcp/search-confluence'

export default async function main() {
	return await searchConfluence({
		query: 'onboarding',
		limit: 10,
	})
}

Add MCP server (setup, not a package export):

import { kody } from 'kody:runtime'

export default async function main() {
	return await kody.mcpServerAdd({
		name: 'atlassian',
		url: 'https://mcp.atlassian.com/v1/mcp/authv2',
	})
	// open returned authUrl, then retry smoke-test / search helpers
}

Edge cases / fork notes

  • This package is MCP-only; OAuth/API-token work belongs in @kody/jira.
  • Search only returns issues/pages the authorizing user can already see.
  • Helpers try several MCP tool name variants; missing tools surface as setup errors, not silent empty lists.
  • Never paste Atlassian API tokens or OAuth client secrets into chat or logs.